Skip to content

update Mbed TLS to v4.1.0#28496

Merged
carlescufi merged 64 commits into
nrfconnect:mainfrom
tomi-font:mbedtls_update_4.1.0
May 22, 2026
Merged

update Mbed TLS to v4.1.0#28496
carlescufi merged 64 commits into
nrfconnect:mainfrom
tomi-font:mbedtls_update_4.1.0

Conversation

@tomi-font
Copy link
Copy Markdown
Contributor

@tomi-font tomi-font commented May 4, 2026

See individual commits for explanations of the changes.
Documentation updates, including release notes/migration guide, will come in a separate PR.

Changes include, but are not limited to:

  • Update Mbed TLS from v3.6.6 to v4.1.0.

  • Update Oberon PSA Crypto from v1.5.4 to v2.0.0. (It now acts as our fork of TF-PSA-Crypto.)

  • Add TF-PSA-Crypto (v1.1.0) as a new module, imported as is from Zephyr.

    • This is used only when CONFIG_TF_PSA_CRYPTO_BUILTIN=y, which is automatically enabled when CONFIG_NRF_SECURITY is disabled, which happens when building on board targets other than Nordic's Arm cores (so native_sim, */cpuflpr, ...).
    • For all the Nordic Arm board targets, CONFIG_TF_PSA_CRYPTO_CUSTOM is enabled and Oberon PSA Crypto is used instead.
  • From now on, enabling CONFIG_MBEDTLS should be done only if you are using TLS or X.509. If you don't, make sure it's disabled.
    If you just need to do crypto operations, enable CONFIG_PSA_CRYPTO instead. This will make all the TF-PSA-Crypto APIs available, including PSA Crypto.
    (Confusingly enough, options that configure TF-PSA-Crypto are still prefixed with MBEDTLS_, so you may find yourself rightfully enabling CONFIG_MBEDTLS_* Kconfig options while CONFIG_MBEDTLS itself is disabled.)

test_crypto: PR-1001
test_tfm: PR-227

@NordicBuilder
Copy link
Copy Markdown
Contributor

NordicBuilder commented May 4, 2026

The following west manifest projects have changed revision in this Pull Request:

Name Old Revision New Revision Diff
find-my https://github.com/nrfconnect/sdk-find-my/commit/8ffe25f09bcef3d5d007b94dc580e8b45e99b7ce https://github.com/nrfconnect/sdk-find-my/commit/160e6cfde82c37614d62911fd025837347df9645 (main) nrfconnect/sdk-find-my@8ffe25f0..160e6cfd
hostap ❌ nrfconnect/sdk-hostap@8fd18de (upmerge_20260325) N/A (Removed) N/A
matter nrfconnect/sdk-connectedhomeip@4ad89bf nrfconnect/sdk-connectedhomeip@106cf3d (master) nrfconnect/sdk-connectedhomeip@4ad89bf2..106cf3d2
mbedtls nrfconnect/sdk-mbedtls@5bb86ae (ncs-v3.3-branch,ncs-v3.3.99-snapshot1,ncs-v3.3.1-rc1,ncs-v3.3.0,ncs-v3.3.0-rc2,ncs-v3.3.0-rc1) nrfconnect/sdk-mbedtls@92d4456 (main) nrfconnect/sdk-mbedtls@5bb86aea..92d44566
mcuboot nrfconnect/sdk-mcuboot@54ea114 nrfconnect/sdk-mcuboot@2c25836 (main) nrfconnect/sdk-mcuboot@54ea1144..2c258365
nrfxlib nrfconnect/sdk-nrfxlib@3acc454 nrfconnect/sdk-nrfxlib@697869f nrfconnect/sdk-nrfxlib@3acc454e..697869f6
oberon-psa-crypto nrfconnect/sdk-oberon-psa-crypto@fdca9eb (ncs-v3.3.99-snapshot1) nrfconnect/sdk-oberon-psa-crypto@3a90050 (main) nrfconnect/sdk-oberon-psa-crypto@fdca9eba..3a900502
openthread nrfconnect/sdk-openthread@ncs-thread-reference-20250402 nrfconnect/sdk-openthread@0fe68ff (main) nrfconnect/sdk-openthread@ncs-thread-reference-20250402..0fe68ff2
trusted-firmware-m nrfconnect/sdk-trusted-firmware-m@e45f5f8 nrfconnect/sdk-trusted-firmware-m@e476105 (main) nrfconnect/sdk-trusted-firmware-m@e45f5f8c..e4761050
zephyr nrfconnect/sdk-zephyr@ecbc745 nrfconnect/sdk-zephyr@544950b (main) nrfconnect/sdk-zephyr@ecbc745c..544950b6

DNM label due to: 1 removed project

Note: This message is automatically posted and updated by the Manifest GitHub Action.

@NordicBuilder
Copy link
Copy Markdown
Contributor

NordicBuilder commented May 4, 2026

CI Information

To view the history of this post, click the 'edited' button above
Build number: 108

Inputs:

Sources:

trusted-firmware-m: PR head: e476105018a2bf2dd8f87bca30a8e766846b4048
sdk-nrf: PR head: f61f14a615198c8cb0c7a2d540dce8239978cb2c
mcuboot: PR head: 2c2583658b9a8010bc3d8c5d54593f833c84a909
nrfxlib: PR head: 697869f61b8288b4198dbc0e25004f0e9c60635f
find-my: PR head: 160e6cfde82c37614d62911fd025837347df9645
mbedtls: PR head: 92d44566209a0d94a571cc7f71a4a7b9262f7602
openthread: PR head: 0fe68ff23527e8bb9a9821ca96a255fccfbb44a7
matter: PR head: 106cf3d26c6b3354fc2006aa71684a9905d1af64
oberon-psa-crypto: PR head: 3a9005029dae919e3f6d9d4182465a8e2572cf9f
hostap: PR head: a50c3c2c78eb3ed9709803eb7479d3df33d7c1bb
zephyr: PR head: 544950b66a38cde53c651a4259a76d392d390006

more details

trusted-firmware-m:

PR head: e476105018a2bf2dd8f87bca30a8e766846b4048
merge base: e45f5f8c5b4f12843be48e136e6bcf143fa1cc5e
Diff

sdk-nrf:

PR head: f61f14a615198c8cb0c7a2d540dce8239978cb2c
merge base: 3f1c9b9880b15b892f6aba251bd06852c729377d
target head (main): 3f1c9b9880b15b892f6aba251bd06852c729377d
Diff

mcuboot:

PR head: 2c2583658b9a8010bc3d8c5d54593f833c84a909
merge base: 54ea1144f26c8086208f023721a2a8b46915dcb2
Diff

nrfxlib:

PR head: 697869f61b8288b4198dbc0e25004f0e9c60635f
merge base: 3acc454e3ddb409d6ddf3b894eb41bec479e2a16
Diff

find-my:

PR head: 160e6cfde82c37614d62911fd025837347df9645
merge base: 8ffe25f09bcef3d5d007b94dc580e8b45e99b7ce
Diff

mbedtls:

PR head: 92d44566209a0d94a571cc7f71a4a7b9262f7602
merge base: 387aafff5bab845593eb1b1925f7a5e32abd45b7
Diff

openthread:

PR head: 0fe68ff23527e8bb9a9821ca96a255fccfbb44a7
merge base: 0e26667136c2c49d42c96b8104ec2e90e8d55e4d
Diff

matter:

PR head: 106cf3d26c6b3354fc2006aa71684a9905d1af64
merge base: 4ad89bf237fff34d7f2195bd027f906d750f2637
Diff

oberon-psa-crypto:

PR head: 3a9005029dae919e3f6d9d4182465a8e2572cf9f
merge base: 4b2a8f3f6c53c3819428075d8be88db8aa5fdd03
Diff

hostap:

PR head: a50c3c2c78eb3ed9709803eb7479d3df33d7c1bb
merge base: c801f15ce8b9dfd363fcc4e45d500ad8d787b4af
Diff

zephyr:

PR head: 544950b66a38cde53c651a4259a76d392d390006
merge base: ecbc745ca398363d241e71af35ce643c73cc6bd3
Diff

Github labels

Enabled Name Description
ci-disabled Disable the ci execution
ci-all-test Run all of ci, no test spec filtering will be done
ci-force-downstream Force execution of downstream even if twister fails
ci-run-twister Force run twister
ci-run-zephyr-twister Force run zephyr twister
List of changed files detected by CI (2650)
.github
│  ├── workflows
│  │  │ oss-history.yml
CODEOWNERS
bootloader
│  ├── mcuboot
│  │  ├── boot
│  │  │  ├── bootutil
│  │  │  │  ├── include
│  │  │  │  │  ├── bootutil
│  │  │  │  │  │  ├── crypto
│  │  │  │  │  │  │  ├── aes_ctr.h
│  │  │  │  │  │  │  ├── aes_kw.h
│  │  │  │  │  │  │  ├── common.h
│  │  │  │  │  │  │  ├── ecdsa.h
│  │  │  │  │  │  │  ├── mbedtls-compat-2.x.h
│  │  │  │  │  │  │  ├── rsa.h
│  │  │  │  │  │  │  │ sha.h
│  │  │  │  ├── src
│  │  │  │  │  ├── ed25519_psa_kmu_its.c
│  │  │  │  │  ├── encrypted.c
│  │  │  │  │  │ encrypted_psa.c
│  │  │  │  ├── zephyr
│  │  │  │  │  │ CMakeLists.txt
│  │  │  ├── zephyr
│  │  │  │  ├── CMakeLists.txt
│  │  │  │  │ Kconfig
│  │  ├── ext
│  │  │  ├── fiat
│  │  │  │  ├── src
│  │  │  │  │  │ curve25519.c
│  │  │  ├── mbedtls-asn1
│  │  │  │  ├── include
│  │  │  │  │  ├── mbedtls
│  │  │  │  │  │  │ pk.h
│  │  ├── sim
│  │  │  ├── mcuboot-sys
│  │  │  │  ├── csupport
│  │  │  │  │  │ run.c
doc
│  ├── nrf
│  │  ├── app_dev
│  │  │  ├── device_guides
│  │  │  │  ├── kmu_guides
│  │  │  │  │  ├── kmu_provisioning_overview.rst
│  │  │  │  │  │ kmu_psa_crypto_api_prog_model.rst
│  │  ├── conf.py
│  │  ├── libraries
│  │  │  ├── security
│  │  │  │  ├── nrf_security
│  │  │  │  │  ├── doc
│  │  │  │  │  │  │ backend_config.rst
│  │  ├── releases_and_maturity
│  │  │  ├── known_issues.rst
│  │  │  ├── releases
│  │  │  │  ├── release-notes-1.3.0.rst
│  │  │  │  ├── release-notes-2.6.0.rst
│  │  │  │  ├── release-notes-2.7.0.rst
│  │  │  │  ├── release-notes-2.8.0.rst
│  │  │  │  ├── release-notes-3.2.0-preview3.rst
│  │  │  │  │ release-notes-3.2.0.rst
│  │  ├── samples
│  │  │  │ crypto.rst
│  │  ├── security
│  │  │  ├── crypto
│  │  │  │  │ crypto_supported_features.rst
│  │  ├── templates
│  │  │  │ cheat_sheet.rst
│  │  ├── test_and_optimize
│  │  │  ├── test_framework
│  │  │  │  │ index.rst
│  ├── nrfxlib
│  │  │ nrfxlib.doxyfile.in
drivers
│  ├── hw_cc3xx
│  │  │ hw_cc3xx.c
lib
│  ├── app_jwt
│  │  │ CMakeLists.txt
│  ├── hw_unique_key
│  │  │ hw_unique_key_cracen_kmu.c
│  ├── identity_key
│  │  │ identity_key.c
modules
│  ├── crypto
│  │  ├── mbedtls
│  │  │  ├── .github
│  │  │  │  ├── ISSUE_TEMPLATE
│  │  │  │  │  │ bug_report.md
│  │  │  │  │ pull_request_template.md
│  │  │  ├── .gitignore
│  │  │  ├── .gitmodules
│  │  │  ├── .mypy.ini
│  │  │  ├── .pylintrc
│  │  │  ├── .readthedocs.yaml
│  │  │  ├── .sonarcloud.properties
│  │  │  ├── 3rdparty
│  │  │  │  ├── CMakeLists.txt
│  │  │  │  ├── Makefile.inc
│  │  │  │  ├── everest
│  │  │  │  │  ├── CMakeLists.txt
│  │  │  │  │  ├── Makefile.inc
│  │  │  │  │  ├── README.md
│  │  │  │  │  ├── include
│  │  │  │  │  │  ├── everest
│  │  │  │  │  │  │  ├── Hacl_Curve25519.h
│  │  │  │  │  │  │  ├── everest.h
│  │  │  │  │  │  │  ├── kremlib.h
│  │  │  │  │  │  │  ├── kremlib
│  │  │  │  │  │  │  │  ├── FStar_UInt128.h
│  │  │  │  │  │  │  │  │ FStar_UInt64_FStar_UInt32_FStar_UInt16_FStar_UInt8.h
│  │  │  │  │  │  │  ├── kremlin
│  │  │  │  │  │  │  │  ├── c_endianness.h
│  │  │  │  │  │  │  │  ├── internal
│  │  │  │  │  │  │  │  │  ├── builtin.h
│  │  │  │  │  │  │  │  │  ├── callconv.h
│  │  │  │  │  │  │  │  │  ├── compat.h
│  │  │  │  │  │  │  │  │  ├── debug.h
│  │  │  │  │  │  │  │  │  ├── target.h
│  │  │  │  │  │  │  │  │  ├── types.h
│  │  │  │  │  │  │  │  │  │ wasmsupport.h
│  │  │  │  │  │  │  ├── vs2013
│  │  │  │  │  │  │  │  ├── Hacl_Curve25519.h
│  │  │  │  │  │  │  │  ├── inttypes.h
│  │  │  │  │  │  │  │  │ stdbool.h
│  │  │  │  │  │  │  │ x25519.h
│  │  │  │  │  ├── library
│  │  │  │  │  │  ├── Hacl_Curve25519.c
│  │  │  │  │  │  ├── Hacl_Curve25519_joined.c
│  │  │  │  │  │  ├── everest.c
│  │  │  │  │  │  ├── kremlib
│  │  │  │  │  │  │  ├── FStar_UInt128_extracted.c
│  │  │  │  │  │  │  │ FStar_UInt64_FStar_UInt32_FStar_UInt16_FStar_UInt8.c
│  │  │  │  │  │  ├── legacy
│  │  │  │  │  │  │  │ Hacl_Curve25519.c
│  │  │  │  │  │  │ x25519.c
│  │  │  │  ├── p256-m
│  │  │  │  │  ├── CMakeLists.txt
│  │  │  │  │  ├── Makefile.inc
│  │  │  │  │  ├── README.md
│  │  │  │  │  ├── p256-m
│  │  │  │  │  │  ├── README.md
│  │  │  │  │  │  ├── p256-m.c
│  │  │  │  │  │  │ p256-m.h
│  │  │  │  │  ├── p256-m_driver_entrypoints.c
│  │  │  │  │  │ p256-m_driver_entrypoints.h
│  │  │  ├── BRANCHES.md
│  │  │  ├── CMakeLists.txt
│  │  │  ├── CONTRIBUTING.md
│  │  │  ├── ChangeLog
│  │  │  ├── ChangeLog.d
│  │  │  │  ├── 00README.md
│  │  │  │  │ fix-tls12-rsa-pss-sigalgs.txt
│  │  │  ├── README.md
│  │  │  ├── SECURITY.md
│  │  │  ├── configs
│  │  │  │  ├── README.txt
│  │  │  │  ├── config-ccm-psk-dtls1_2.h
│  │  │  │  ├── config-ccm-psk-tls1_2.h
│  │  │  │  ├── config-no-entropy.h
│  │  │  │  ├── config-suite-b.h
│  │  │  │  ├── config-symmetric-only.h
│  │  │  │  ├── config-tfm.h
│  │  │  │  ├── config-thread.h
│  │  │  │  ├── crypto-config-ccm-aes-sha256.h
│  │  │  │  ├── crypto-config-ccm-psk-tls1_2.h
│  │  │  │  ├── crypto-config-suite-b.h
│  │  │  │  ├── crypto-config-thread.h
│  │  │  │  ├── ext
│  │  │  │  │  ├── README.md
│  │  │  │  │  ├── crypto_config_profile_medium.h
│  │  │  │  │  │ tfm_mbedcrypto_config_profile_medium.h
│  │  │  ├── docs
│  │  │  │  ├── 3.0-migration-guide.md
│  │  │  │  ├── 4.0-migration-guide.md
│  │  │  │  ├── architecture
│  │  │  │  │  ├── alternative-implementations.md
│  │  │  │  │  ├── mbed-crypto-storage-specification.md
│  │  │  │  │  ├── psa-crypto-implementation-structure.md
│  │  │  │  │  ├── psa-migration
│  │  │  │  │  │  ├── md-cipher-dispatch.md
│  │  │  │  │  │  ├── outcome-analysis.sh
│  │  │  │  │  │  ├── psa-legacy-bridges.md
│  │  │  │  │  │  ├── psa-limitations.md
│  │  │  │  │  │  ├── strategy.md
│  │  │  │  │  │  ├── syms.sh
│  │  │  │  │  │  │ testing.md
│  │  │  │  │  ├── psa-shared-memory.md
│  │  │  │  │  ├── psa-storage-resilience.md
│  │  │  │  │  ├── psa-thread-safety
│  │  │  │  │  │  ├── key-slot-state-transitions.png
│  │  │  │  │  │  │ psa-thread-safety.md
│  │  │  │  │  ├── testing
│  │  │  │  │  │  ├── driver-interface-test-strategy.md
│  │  │  │  │  │  ├── invasive-testing.md
│  │  │  │  │  │  ├── psa-storage-format-testing.md
│  │  │  │  │  │  │ test-framework.md
│  │  │  │  │  │ tls13-support.md
│  │  │  │  ├── driver-only-builds.md
│  │  │  │  ├── proposed
│  │  │  │  │  ├── Makefile
│  │  │  │  │  ├── config-split.md
│  │  │  │  │  ├── psa-conditional-inclusion-c.md
│  │  │  │  │  ├── psa-driver-developer-guide.md
│  │  │  │  │  ├── psa-driver-integration-guide.md
│  │  │  │  │  ├── psa-driver-interface.md
│  │  │  │  │  │ psa-driver-wrappers-codegen-migration-guide.md
│  │  │  │  ├── psa-driver-example-and-guide.md
│  │  │  │  ├── psa-transition.md
│  │  │  │  ├── requirements.txt
│  │  │  │  │ use-psa-crypto.md
│  │  │  ├── doxygen
│  │  │  │  ├── input
│  │  │  │  │  ├── doc_encdec.h
│  │  │  │  │  │ doc_mainpage.h
│  │  │  │  │ mbedtls.doxyfile
│  │  │  ├── framework
│  │  │  ├── include
│  │  │  │  ├── CMakeLists.txt
│  │  │  │  ├── mbedtls
│  │  │  │  │  ├── aes.h
│  │  │  │  │  ├── aria.h
│  │  │  │  │  ├── asn1.h
│  │  │  │  │  ├── asn1write.h
│  │  │  │  │  ├── base64.h
│  │  │  │  │  ├── bignum.h
│  │  │  │  │  ├── block_cipher.h
│  │  │  │  │  ├── build_info.h
│  │  │  │  │  ├── camellia.h
│  │  │  │  │  ├── ccm.h
│  │  │  │  │  ├── chacha20.h
│  │  │  │  │  ├── chachapoly.h
│  │  │  │  │  ├── check_config.h
│  │  │  │  │  ├── cipher.h
│  │  │  │  │  ├── cmac.h
│  │  │  │  │  ├── compat-2.x.h
│  │  │  │  │  ├── config_adjust_legacy_crypto.h
│  │  │  │  │  ├── config_adjust_legacy_from_psa.h
│  │  │  │  │  ├── config_adjust_psa_from_legacy.h
│  │  │  │  │  ├── config_adjust_psa_superset_legacy.h
│  │  │  │  │  ├── config_psa.h
│  │  │  │  │  ├── constant_time.h
│  │  │  │  │  ├── ctr_drbg.h
│  │  │  │  │  ├── debug.h
│  │  │  │  │  ├── des.h
│  │  │  │  │  ├── dhm.h
│  │  │  │  │  ├── ecdh.h
│  │  │  │  │  ├── ecdsa.h
│  │  │  │  │  ├── ecjpake.h
│  │  │  │  │  ├── ecp.h
│  │  │  │  │  ├── entropy.h
│  │  │  │  │  ├── error.h
│  │  │  │  │  ├── gcm.h
│  │  │  │  │  ├── hkdf.h
│  │  │  │  │  ├── hmac_drbg.h
│  │  │  │  │  ├── lms.h
│  │  │  │  │  ├── mbedtls_config.h
│  │  │  │  │  ├── md.h
│  │  │  │  │  ├── md5.h
│  │  │  │  │  ├── memory_buffer_alloc.h
│  │  │  │  │  ├── net_sockets.h
│  │  │  │  │  ├── nist_kw.h
│  │  │  │  │  ├── oid.h
│  │  │  │  │  ├── pem.h
│  │  │  │  │  ├── pk.h
│  │  │  │  │  ├── pkcs12.h
│  │  │  │  │  ├── pkcs5.h
│  │  │  │  │  ├── pkcs7.h
│  │  │  │  │  ├── platform.h
│  │  │  │  │  ├── platform_time.h
│  │  │  │  │  ├── platform_util.h
│  │  │  │  │  ├── poly1305.h
│  │  │  │  │  ├── private
│  │  │  │  │  │  ├── config_adjust_ssl.h
│  │  │  │  │  │  │ config_adjust_x509.h
│  │  │  │  │  ├── private_access.h
│  │  │  │  │  ├── psa_util.h
│  │  │  │  │  ├── ripemd160.h
│  │  │  │  │  ├── rsa.h
│  │  │  │  │  ├── sha1.h
│  │  │  │  │  ├── sha256.h
│  │  │  │  │  ├── sha3.h
│  │  │  │  │  ├── sha512.h
│  │  │  │  │  ├── ssl.h
│  │  │  │  │  ├── ssl_ciphersuites.h
│  │  │  │  │  ├── ssl_cookie.h
│  │  │  │  │  ├── ssl_ticket.h
│  │  │  │  │  ├── threading.h
│  │  │  │  │  ├── timing.h
│  │  │  │  │  ├── version.h
│  │  │  │  │  ├── x509.h
│  │  │  │  │  ├── x509_crl.h
│  │  │  │  │  ├── x509_crt.h
│  │  │  │  │  │ x509_csr.h
│  │  │  │  ├── psa
│  │  │  │  │  ├── build_info.h
│  │  │  │  │  ├── crypto.h
│  │  │  │  │  ├── crypto_adjust_auto_enabled.h
│  │  │  │  │  ├── crypto_adjust_config_key_pair_types.h
│  │  │  │  │  ├── crypto_adjust_config_synonyms.h
│  │  │  │  │  ├── crypto_builtin_composites.h
│  │  │  │  │  ├── crypto_builtin_key_derivation.h
│  │  │  │  │  ├── crypto_builtin_primitives.h
│  │  │  │  │  ├── crypto_compat.h
│  │  │  │  │  ├── crypto_config.h
│  │  │  │  │  ├── crypto_driver_common.h
│  │  │  │  │  ├── crypto_driver_contexts_composites.h
│  │  │  │  │  ├── crypto_driver_contexts_key_derivation.h
│  │  │  │  │  ├── crypto_driver_contexts_primitives.h
│  │  │  │  │  ├── crypto_extra.h
│  │  │  │  │  ├── crypto_legacy.h
│  │  │  │  │  ├── crypto_platform.h
│  │  │  │  │  ├── crypto_se_driver.h
│  │  │  │  │  ├── crypto_sizes.h
│  │  │  │  │  ├── crypto_struct.h
│  │  │  │  │  ├── crypto_types.h
│  │  │  │  │  │ crypto_values.h
│  │  │  ├── library
│  │  │  │  ├── .gitignore
│  │  │  │  ├── CMakeLists.txt
│  │  │  │  ├── Makefile
│  │  │  │  ├── aes.c
│  │  │  │  ├── aesce.c
│  │  │  │  ├── aesce.h
│  │  │  │  ├── aesni.c
│  │  │  │  ├── aesni.h
│  │  │  │  ├── alignment.h
│  │  │  │  ├── aria.c
│  │  │  │  ├── asn1parse.c
│  │  │  │  ├── asn1write.c
│  │  │  │  ├── base64.c
│  │  │  │  ├── base64_internal.h
│  │  │  │  ├── bignum.c
│  │  │  │  ├── bignum_core.c
│  │  │  │  ├── bignum_core.h
│  │  │  │  ├── bignum_mod.c
│  │  │  │  ├── bignum_mod.h
│  │  │  │  ├── bignum_mod_raw.c
│  │  │  │  ├── bignum_mod_raw.h
│  │  │  │  ├── bignum_mod_raw_invasive.h
│  │  │  │  ├── block_cipher.c
│  │  │  │  ├── block_cipher_internal.h
│  │  │  │  ├── bn_mul.h
│  │  │  │  ├── camellia.c
│  │  │  │  ├── ccm.c
│  │  │  │  ├── chacha20.c
│  │  │  │  ├── chachapoly.c
│  │  │  │  ├── check_crypto_config.h
│  │  │  │  ├── cipher.c
│  │  │  │  ├── cipher_wrap.c
│  │  │  │  ├── cipher_wrap.h
│  │  │  │  ├── cmac.c
│  │  │  │  ├── common.h
│  │  │  │  ├── constant_time.c
│  │  │  │  ├── constant_time_impl.h
│  │  │  │  ├── constant_time_internal.h
│  │  │  │  ├── ctr.h
│  │  │  │  ├── ctr_drbg.c
│  │  │  │  ├── debug.c
│  │  │  │  ├── debug_internal.h
│  │  │  │  ├── des.c
│  │  │  │  ├── dhm.c
│  │  │  │  ├── ecdh.c
│  │  │  │  ├── ecdsa.c
│  │  │  │  ├── ecjpake.c
│  │  │  │  ├── ecp.c
│  │  │  │  ├── ecp_curves.c
│  │  │  │  ├── ecp_curves_new.c
│  │  │  │  ├── ecp_internal_alt.h
│  │  │  │  ├── ecp_invasive.h
│  │  │  │  ├── entropy.c
│  │  │  │  ├── entropy_poll.c
│  │  │  │  ├── entropy_poll.h
│  │  │  │  ├── error.c
│  │  │  │  ├── gcm.c
│  │  │  │  ├── hkdf.c
│  │  │  │  ├── hmac_drbg.c
│  │  │  │  ├── lmots.c
│  │  │  │  ├── lmots.h
│  │  │  │  ├── lms.c
│  │  │  │  ├── mbedtls_check_config.h
│  │  │  │  ├── mbedtls_common.h
│  │  │  │  ├── mbedtls_config.c
│  │  │  │  ├── mbedtls_config_check_before.h
│  │  │  │  ├── mbedtls_config_check_final.h
│  │  │  │  ├── mbedtls_config_check_user.h
│  │  │  │  ├── mbedtls_platform_requirements.h
│  │  │  │  ├── mbedtls_utils.h
│  │  │  │  ├── md.c
│  │  │  │  ├── md5.c
│  │  │  │  ├── md_psa.h
│  │  │  │  ├── md_wrap.h
│  │  │  │  ├── memory_buffer_alloc.c
│  │  │  │  ├── mps_reader.c
│  │  │  │  ├── mps_trace.c
│  │  │  │  ├── mps_trace.h
│  │  │  │  ├── net_sockets.c
│  │  │  │  ├── nist_kw.c
│  │  │  │  ├── oid.c
│  │  │  │  ├── padlock.c
│  │  │  │  ├── padlock.h
│  │  │  │  ├── pem.c
│  │  │  │  ├── pk.c
│  │  │  │  ├── pk_ecc.c
│  │  │  │  ├── pk_internal.h
│  │  │  │  ├── pk_wrap.c
│  │  │  │  ├── pk_wrap.h
│  │  │  │  ├── pkcs12.c
│  │  │  │  ├── pkcs5.c
│  │  │  │  ├── pkcs7.c
│  │  │  │  ├── pkparse.c
│  │  │  │  ├── pkwrite.c
│  │  │  │  ├── pkwrite.h
│  │  │  │  ├── platform.c
│  │  │  │  ├── platform_util.c
│  │  │  │  ├── poly1305.c
│  │  │  │  ├── psa_crypto.c
│  │  │  │  ├── psa_crypto_aead.c
│  │  │  │  ├── psa_crypto_aead.h
│  │  │  │  ├── psa_crypto_cipher.c
│  │  │  │  ├── psa_crypto_cipher.h
│  │  │  │  ├── psa_crypto_client.c
│  │  │  │  ├── psa_crypto_core.h
│  │  │  │  ├── psa_crypto_core_common.h
│  │  │  │  ├── psa_crypto_driver_wrappers_no_static.h
│  │  │  │  ├── psa_crypto_ecp.c
│  │  │  │  ├── psa_crypto_ecp.h
│  │  │  │  ├── psa_crypto_ffdh.c
│  │  │  │  ├── psa_crypto_ffdh.h
│  │  │  │  ├── psa_crypto_hash.c
│  │  │  │  ├── psa_crypto_hash.h
│  │  │  │  ├── psa_crypto_invasive.h
│  │  │  │  ├── psa_crypto_its.h
│  │  │  │  ├── psa_crypto_mac.c
│  │  │  │  ├── psa_crypto_mac.h
│  │  │  │  ├── psa_crypto_pake.c
│  │  │  │  ├── psa_crypto_pake.h
│  │  │  │  ├── psa_crypto_random_impl.h
│  │  │  │  ├── psa_crypto_rsa.c
│  │  │  │  ├── psa_crypto_rsa.h
│  │  │  │  ├── psa_crypto_se.c
│  │  │  │  ├── psa_crypto_se.h
│  │  │  │  ├── psa_crypto_slot_management.c
│  │  │  │  ├── psa_crypto_slot_management.h
│  │  │  │  ├── psa_crypto_storage.c
│  │  │  │  ├── psa_crypto_storage.h
│  │  │  │  ├── psa_its_file.c
│  │  │  │  ├── psa_util.c
│  │  │  │  ├── psa_util_internal.h
│  │  │  │  ├── ripemd160.c
│  │  │  │  ├── rsa.c
│  │  │  │  ├── rsa_alt_helpers.c
│  │  │  │  ├── rsa_alt_helpers.h
│  │  │  │  ├── rsa_internal.h
│  │  │  │  ├── sha1.c
│  │  │  │  ├── sha256.c
│  │  │  │  ├── sha3.c
│  │  │  │  ├── sha512.c
│  │  │  │  ├── ssl_cache.c
│  │  │  │  ├── ssl_ciphersuites.c
│  │  │  │  ├── ssl_ciphersuites_internal.h
│  │  │  │  ├── ssl_client.c
│  │  │  │  ├── ssl_client.h
│  │  │  │  ├── ssl_cookie.c
│  │  │  │  ├── ssl_debug_helpers.h
│  │  │  │  ├── ssl_debug_helpers_generated.c
│  │  │  │  ├── ssl_misc.h
│  │  │  │  ├── ssl_msg.c
│  │  │  │  ├── ssl_ticket.c
│  │  │  │  ├── ssl_tls.c
│  │  │  │  ├── ssl_tls12_client.c
│  │  │  │  ├── ssl_tls12_server.c
│  │  │  │  ├── ssl_tls13_client.c
│  │  │  │  ├── ssl_tls13_generic.c
│  │  │  │  ├── ssl_tls13_invasive.h
│  │  │  │  ├── ssl_tls13_keys.c
│  │  │  │  ├── ssl_tls13_keys.h
│  │  │  │  ├── ssl_tls13_server.c
│  │  │  │  ├── threading.c
│  │  │  │  ├── timing.c
│  │  │  │  ├── version.c
│  │  │  │  ├── version_features.c
│  │  │  │  ├── x509.c
│  │  │  │  ├── x509_create.c
│  │  │  │  ├── x509_crl.c
│  │  │  │  ├── x509_crt.c
│  │  │  │  ├── x509_csr.c
│  │  │  │  ├── x509_internal.h
│  │  │  │  ├── x509_oid.c
│  │  │  │  ├── x509_oid.h
│  │  │  │  ├── x509write.c
│  │  │  │  ├── x509write_crt.c
│  │  │  │  │ x509write_csr.c
│  │  │  ├── pkgconfig
│  │  │  │  ├── .gitignore
│  │  │  │  │ mbedcrypto.pc.in
│  │  │  ├── programs
│  │  │  │  ├── .gitignore
│  │  │  │  ├── CMakeLists.txt
│  │  │  │  ├── Makefile
│  │  │  │  ├── README.md
│  │  │  │  ├── aes
│  │  │  │  │  ├── CMakeLists.txt
│  │  │  │  │  │ crypt_and_hash.c
│  │  │  │  ├── cipher
│  │  │  │  │  ├── CMakeLists.txt
│  │  │  │  │  │ cipher_aead_demo.c
│  │  │  │  ├── demo_common.sh
│  │  │  │  ├── fuzz
│  │  │  │  │  ├── .gitignore
│  │  │  │  │  ├── CMakeLists.txt
│  │  │  │  │  ├── Makefile
│  │  │  │  │  ├── common.c
│  │  │  │  │  ├── common.h
│  │  │  │  │  ├── fuzz_client.c
│  │  │  │  │  ├── fuzz_dtlsclient.c
│  │  │  │  │  ├── fuzz_dtlsserver.c
│  │  │  │  │  ├── fuzz_pkcs7.c
│  │  │  │  │  ├── fuzz_privkey.c
│  │  │  │  │  ├── fuzz_pubkey.c
│  │  │  │  │  ├── fuzz_server.c
│  │  │  │  │  ├── fuzz_x509crl.c
│  │  │  │  │  ├── fuzz_x509crt.c
│  │  │  │  │  ├── fuzz_x509csr.c
│  │  │  │  │  │ onefile.c
│  │  │  │  ├── hash
│  │  │  │  │  ├── CMakeLists.txt
│  │  │  │  │  ├── generic_sum.c
│  │  │  │  │  ├── hello.c
│  │  │  │  │  │ md_hmac_demo.c
│  │  │  │  ├── pkey
│  │  │  │  │  ├── CMakeLists.txt
│  │  │  │  │  ├── dh_client.c
│  │  │  │  │  ├── dh_genprime.c
│  │  │  │  │  ├── dh_prime.txt
│  │  │  │  │  ├── dh_server.c
│  │  │  │  │  ├── ecdh_curve25519.c
│  │  │  │  │  ├── ecdsa.c
│  │  │  │  │  ├── gen_key.c
│  │  │  │  │  ├── key_app.c
│  │  │  │  │  ├── key_app_writer.c
│  │  │  │  │  ├── mpi_demo.c
│  │  │  │  │  ├── pk_decrypt.c
│  │  │  │  │  ├── pk_encrypt.c
│  │  │  │  │  ├── pk_sign.c
│  │  │  │  │  ├── pk_verify.c
│  │  │  │  │  ├── rsa_decrypt.c
│  │  │  │  │  ├── rsa_encrypt.c
│  │  │  │  │  ├── rsa_genkey.c
│  │  │  │  │  ├── rsa_priv.txt
│  │  │  │  │  ├── rsa_pub.txt
│  │  │  │  │  ├── rsa_sign.c
│  │  │  │  │  ├── rsa_sign_pss.c
│  │  │  │  │  ├── rsa_verify.c
│  │  │  │  │  │ rsa_verify_pss.c
│  │  │  │  ├── psa
│  │  │  │  │  ├── CMakeLists.txt
│  │  │  │  │  ├── aead_demo.c
│  │  │  │  │  ├── crypto_examples.c
│  │  │  │  │  ├── hmac_demo.c
│  │  │  │  │  ├── key_ladder_demo.c
│  │  │  │  │  ├── key_ladder_demo.sh
│  │  │  │  │  ├── psa_constant_names.c
│  │  │  │  │  ├── psa_hash.c
│  │  │  │  │  │ psa_hash_demo.sh
│  │  │  │  ├── random
│  │  │  │  │  ├── CMakeLists.txt
│  │  │  │  │  ├── gen_entropy.c
│  │  │  │  │  │ gen_random_ctr_drbg.c
│  │  │  │  ├── ssl
│  │  │  │  │  ├── CMakeLists.txt
│  │  │  │  │  ├── dtls_client.c
│  │  │  │  │  ├── dtls_server.c
│  │  │  │  │  ├── mini_client.c
│  │  │  │  │  ├── ssl_client1.c
│  │  │  │  │  ├── ssl_client2.c
│  │  │  │  │  ├── ssl_context_info.c
│  │  │  │  │  ├── ssl_fork_server.c
│  │  │  │  │  ├── ssl_mail_client.c
│  │  │  │  │  ├── ssl_pthread_server.c
│  │  │  │  │  ├── ssl_server.c
│  │  │  │  │  ├── ssl_server2.c
│  │  │  │  │  ├── ssl_test_common_source.c
│  │  │  │  │  ├── ssl_test_lib.c
│  │  │  │  │  │ ssl_test_lib.h
│  │  │  │  ├── test
│  │  │  │  │  ├── CMakeLists.txt
│  │  │  │  │  ├── benchmark.c
│  │  │  │  │  ├── cmake_package
│  │  │  │  │  │  ├── .gitignore
│  │  │  │  │  │  ├── CMakeLists.txt
│  │  │  │  │  │  │ cmake_package.c
│  │  │  │  │  ├── cmake_package_install
│  │  │  │  │  │  ├── .gitignore
│  │  │  │  │  │  ├── CMakeLists.txt
│  │  │  │  │  │  │ cmake_package_install.c
│  │  │  │  │  ├── cmake_subproject
│  │  │  │  │  │  ├── CMakeLists.txt
│  │  │  │  │  │  │ cmake_subproject.c
│  │  │  │  │  ├── dlopen.c
│  │  │  │  │  ├── dlopen_demo.sh
│  │  │  │  │  ├── generate_cpp_dummy_build.sh
│  │  │  │  │  ├── metatest.c
│  │  │  │  │  ├── query_compile_time_config.c
│  │  │  │  │  ├── query_config.h
│  │  │  │  │  ├── query_included_headers.c
│  │  │  │  │  ├── selftest.c
│  │  │  │  │  ├── udp_proxy.c
│  │  │  │  │  │ zeroize.c
│  │  │  │  ├── util
│  │  │  │  │  ├── CMakeLists.txt
│  │  │  │  │  │ pem2der.c
│  │  │  │  ├── wince_main.c
│  │  │  │  ├── x509
│  │  │  │  │  ├── CMakeLists.txt
│  │  │  │  │  ├── cert_app.c
│  │  │  │  │  ├── cert_req.c
│  │  │  │  │  ├── cert_write.c
│  │  │  │  │  ├── crl_app.c
│  │  │  │  │  ├── load_roots.c
│  │  │  │  │  │ req_app.c
│  │  │  ├── scripts
│  │  │  │  ├── abi_check.py
│  │  │  │  ├── apidoc_full.sh
│  │  │  │  ├── assemble_changelog.py
│  │  │  │  ├── bump_version.sh
│  │  │  │  ├── ci.requirements.txt
│  │  │  │  ├── code_size_compare.py
│  │  │  │  ├── code_style.py
│  │  │  │  ├── common.make
│  │  │  │  ├── config.pl
│  │  │  │  ├── config.py
│  │  │  │  ├── data_files
│  │  │  │  │  ├── config-options-current.txt
│  │  │  │  │  ├── driver_jsons
│  │  │  │  │  │  ├── driver_opaque_schema.json
│  │  │  │  │  │  ├── driver_transparent_schema.json
│  │  │  │  │  │  ├── driverlist.json
│  │  │  │  │  │  ├── mbedtls_test_opaque_driver.json
│  │  │  │  │  │  ├── mbedtls_test_transparent_driver.json
│  │  │  │  │  │  │ p256_transparent_driver.json
│  │  │  │  │  ├── driver_templates
│  │  │  │  │  │  ├── OS-template-opaque.jinja
│  │  │  │  │  │  ├── OS-template-transparent.jinja
│  │  │  │  │  │  ├── psa_crypto_driver_wrappers.h.jinja
│  │  │  │  │  │  │ psa_crypto_driver_wrappers_no_static.c.jinja
│  │  │  │  │  ├── error.fmt
│  │  │  │  │  ├── query_config.fmt
│  │  │  │  │  │ version_features.fmt
│  │  │  │  ├── ecc-heap.sh
│  │  │  │  ├── footprint.sh
│  │  │  │  ├── framework_scripts_path.py
│  │  │  │  ├── generate_config_checks.py
│  │  │  │  ├── generate_driver_wrappers.py
│  │  │  │  ├── generate_errors.pl
│  │  │  │  ├── generate_features.pl
│  │  │  │  ├── generate_psa_constants.py
│  │  │  │  ├── generate_query_config.pl
│  │  │  │  ├── generate_ssl_debug_helpers.py
│  │  │  │  ├── generate_tls_handshake_tests.py
│  │  │  │  ├── generate_visualc_files.pl
│  │  │  │  ├── lcov.sh
│  │  │  │  ├── legacy.make
│  │  │  │  ├── make_generated_files.bat
│  │  │  │  ├── make_generated_files.py
│  │  │  │  ├── mbedtls_dev
│  │  │  │  │  ├── __init__.py
│  │  │  │  │  ├── asymmetric_key_data.py
│  │  │  │  │  ├── bignum_common.py
│  │  │  │  │  ├── bignum_core.py
│  │  │  │  │  ├── bignum_data.py
│  │  │  │  │  ├── bignum_mod.py
│  │  │  │  │  ├── bignum_mod_raw.py
│  │  │  │  │  ├── build_tree.py
│  │  │  │  │  ├── c_build_helper.py
│  │  │  │  │  ├── c_parsing_helper.py
│  │  │  │  │  ├── c_wrapper_generator.py
│  │  │  │  │  ├── crypto_data_tests.py
│  │  │  │  │  ├── crypto_knowledge.py
│  │  │  │  │  ├── ecp.py
│  │  │  │  │  ├── logging_util.py
│  │  │  │  │  ├── macro_collector.py
│  │  │  │  │  ├── psa_information.py
│  │  │  │  │  ├── psa_storage.py
│  │  │  │  │  ├── test_case.py
│  │  │  │  │  ├── test_data_generation.py
│  │  │  │  │  │ typing_util.py
│  │  │  │  ├── memory.sh
│  │  │  │  ├── min_requirements.py
│  │  │  │  ├── output_env.sh
│  │  │  │  ├── prepare_release.sh
│  │  │  │  ├── project_name.txt
│  │  │  │  ├── sbom.cdx.json
│  │  │  │  │ windows_msbuild.bat
│  │  │  ├── tests
│  │  │  │  ├── .gitignore
│  │  │  │  ├── CMakeLists.txt
│  │  │  │  ├── Makefile
│  │  │  │  ├── compat.sh
│  │  │  │  ├── configs
│  │  │  │  │  ├── tls13-only.h
│  │  │  │  │  ├── user-config-for-test.h
│  │  │  │  │  ├── user-config-malloc-0-null.h
│  │  │  │  │  │ user-config-zeroize-memset.h
│  │  │  │  ├── context-info.sh
│  │  │  │  ├── data_files
│  │  │  │  │  ├── .gitignore
│  │  │  │  │  ├── Makefile
│  │  │  │  │  ├── Readme-x509.txt
│  │  │  │  │  ├── authorityKeyId_no_authorityKeyId.crt.der
│  │  │  │  │  ├── authorityKeyId_no_issuer.crt.der
│  │  │  │  │  ├── authorityKeyId_no_keyid.crt.der
│  │  │  │  │  ├── authorityKeyId_subjectKeyId.conf
│  │  │  │  │  ├── authorityKeyId_subjectKeyId.crt.der
│  │  │  │  │  ├── authorityKeyId_subjectKeyId_issuer_tag1_malformed.crt.der
│  │  │  │  │  ├── authorityKeyId_subjectKeyId_issuer_tag2_malformed.crt.der
│  │  │  │  │  ├── authorityKeyId_subjectKeyId_keyid_tag_len_malformed.crt.der
│  │  │  │  │  ├── authorityKeyId_subjectKeyId_keyid_tag_malformed.crt.der
│  │  │  │  │  ├── authorityKeyId_subjectKeyId_length_malformed.crt.der
│  │  │  │  │  ├── authorityKeyId_subjectKeyId_sequence_tag_malformed.crt.der
│  │  │  │  │  ├── authorityKeyId_subjectKeyId_sn_len_malformed.crt.der
│  │  │  │  │  ├── authorityKeyId_subjectKeyId_sn_tag_malformed.crt.der
│  │  │  │  │  ├── authorityKeyId_subjectKeyId_tag_len_malformed.crt.der
│  │  │  │  │  ├── authorityKeyId_subjectKeyId_tag_malformed.crt.der
│  │  │  │  │  ├── base64
│  │  │  │  │  │  ├── cli_cid.txt
│  │  │  │  │  │  ├── cli_ciphersuite.txt
│  │  │  │  │  │  ├── cli_def.txt
│  │  │  │  │  │  ├── cli_min_cfg.txt
│  │  │  │  │  │  ├── cli_no_alpn.txt
│  │  │  │  │  │  ├── cli_no_keep_cert.txt
│  │  │  │  │  │  ├── cli_no_mfl.txt
│  │  │  │  │  │  ├── cli_no_packing.txt
│  │  │  │  │  │  ├── def_b64_ff.bin
│  │  │  │  │  │  ├── def_b64_too_big_1.txt
│  │  │  │  │  │  ├── def_b64_too_big_2.txt
│  │  │  │  │  │  ├── def_b64_too_big_3.txt
│  │  │  │  │  │  ├── def_bad_b64.txt
│  │  │  │  │  │  ├── empty.txt
│  │  │  │  │  │  ├── mfl_1024.txt
│  │  │  │  │  │  ├── mtu_10000.txt
│  │  │  │  │  │  ├── srv_cid.txt
│  │  │  │  │  │  ├── srv_ciphersuite.txt
│  │  │  │  │  │  ├── srv_def.txt
│  │  │  │  │  │  ├── srv_min_cfg.txt
│  │  │  │  │  │  ├── srv_no_alpn.txt
│  │  │  │  │  │  ├── srv_no_keep_cert.txt
│  │  │  │  │  │  ├── srv_no_mfl.txt
│  │  │  │  │  │  ├── srv_no_packing.txt
│  │  │  │  │  │  │ v2.19.1.txt
│  │  │  │  │  ├── cert_example_multi.crt
│  │  │  │  │  ├── cert_example_multi_nocn.crt
│  │  │  │  │  ├── cert_example_wildcard.crt
│  │  │  │  │  ├── cert_md5.crt
│  │  │  │  │  ├── cert_md5.csr
│  │  │  │  │  ├── cert_sha1.crt
│  │  │  │  │  ├── cert_sha224.crt
│  │  │  │  │  ├── cert_sha256.crt
│  │  │  │  │  ├── cert_sha384.crt
│  │  │  │  │  ├── cert_sha512.crt
│  │  │  │  │  ├── cert_v1_with_ext.crt
│  │  │  │  │  ├── cli-rsa-sha1.crt
│  │  │  │  │  ├── cli-rsa-sha256.crt
│  │  │  │  │  ├── cli-rsa-sha256.crt.der
│  │  │  │  │  ├── cli-rsa-sha256.key.der
│  │  │  │  │  ├── cli-rsa.key
│  │  │  │  │  ├── cli-rsa.key.der
│  │  │  │  │  ├── cli.opensslconf
│  │  │  │  │  ├── cli2.crt
│  │  │  │  │  ├── cli2.crt.der
│  │  │  │  │  ├── cli2.key
│  │  │  │  │  ├── cli2.key.der
│  │  │  │  │  ├── clusterfuzz-testcase-minimized-fuzz_x509crt-6666050834661376.crt.der
│  │  │  │  │  ├── crl-ec-sha1.pem
│  │  │  │  │  ├── crl-ec-sha256.pem
│  │  │  │  │  ├── crl-future.pem
│  │  │  │  │  ├── crl-futureRevocationDate.pem
│  │  │  │  │  ├── crl-rsa-pss-sha1-badsign.pem
│  │  │  │  │  ├── crl-rsa-pss-sha1.pem
│  │  │  │  │  ├── crl-rsa-pss-sha224.pem
│  │  │  │  │  ├── crl-rsa-pss-sha256.pem
│  │  │  │  │  ├── crl-rsa-pss-sha384.pem
│  │  │  │  │  ├── crl-rsa-pss-sha512.pem
│  │  │  │  │  ├── crl.pem
│  │  │  │  │  ├── crl_cat_ec-rsa.pem
│  │  │  │  │  ├── crl_cat_ecfut-rsa.pem
│  │  │  │  │  ├── crl_cat_rsa-ec.pem
│  │  │  │  │  ├── crl_cat_rsabadpem-ec.pem
│  │  │  │  │  ├── crl_expired.pem
│  │  │  │  │  ├── crl_sha256.pem
│  │  │  │  │  ├── crt_cat_rsaexp-ec.pem
│  │  │  │  │  ├── dh.1000.pem
│  │  │  │  │  ├── dh.998.pem
│  │  │  │  │  ├── dh.999.pem
│  │  │  │  │  ├── dh.optlen.der
│  │  │  │  │  ├── dh.optlen.pem
│  │  │  │  │  ├── dhparams.pem
│  │  │  │  │  ├── dir-maxpath
│  │  │  │  │  │  ├── 00.crt
│  │  │  │  │  │  ├── 00.key
│  │  │  │  │  │  ├── 01.crt
│  │  │  │  │  │  ├── 01.key
│  │  │  │  │  │  ├── 02.crt
│  │  │  │  │  │  ├── 02.key
│  │  │  │  │  │  ├── 03.crt
│  │  │  │  │  │  ├── 03.key
│  │  │  │  │  │  ├── 04.crt
│  │  │  │  │  │  ├── 04.key
│  │  │  │  │  │  ├── 05.crt
│  │  │  │  │  │  ├── 05.key
│  │  │  │  │  │  ├── 06.crt
│  │  │  │  │  │  ├── 06.key
│  │  │  │  │  │  ├── 07.crt
│  │  │  │  │  │  ├── 07.key
│  │  │  │  │  │  ├── 08.crt
│  │  │  │  │  │  ├── 08.key
│  │  │  │  │  │  ├── 09.crt
│  │  │  │  │  │  ├── 09.key
│  │  │  │  │  │  ├── 10.crt
│  │  │  │  │  │  ├── 10.key
│  │  │  │  │  │  ├── 11.crt
│  │  │  │  │  │  ├── 11.key
│  │  │  │  │  │  ├── 12.crt
│  │  │  │  │  │  ├── 12.key
│  │  │  │  │  │  ├── 13.crt
│  │  │  │  │  │  ├── 13.key
│  │  │  │  │  │  ├── 14.crt
│  │  │  │  │  │  ├── 14.key
│  │  │  │  │  │  ├── 15.crt
│  │  │  │  │  │  ├── 15.key
│  │  │  │  │  │  ├── 16.crt
│  │  │  │  │  │  ├── 16.key
│  │  │  │  │  │  ├── 17.crt
│  │  │  │  │  │  ├── 17.key
│  │  │  │  │  │  ├── 18.crt
│  │  │  │  │  │  ├── 18.key
│  │  │  │  │  │  ├── 19.crt
│  │  │  │  │  │  ├── 19.key
│  │  │  │  │  │  ├── 20.crt
│  │  │  │  │  │  ├── 20.key
│  │  │  │  │  │  ├── Readme.txt
│  │  │  │  │  │  ├── c00.pem
│  │  │  │  │  │  ├── c01.pem
│  │  │  │  │  │  ├── c02.pem
│  │  │  │  │  │  ├── c03.pem
│  │  │  │  │  │  ├── c04.pem
│  │  │  │  │  │  ├── c05.pem
│  │  │  │  │  │  ├── c06.pem
│  │  │  │  │  │  ├── c07.pem
│  │  │  │  │  │  ├── c08.pem
│  │  │  │  │  │  ├── c09.pem
│  │  │  │  │  │  ├── c10.pem
│  │  │  │  │  │  ├── c11.pem
│  │  │  │  │  │  ├── c12.pem
│  │  │  │  │  │  ├── c13.pem
│  │  │  │  │  │  ├── c14.pem
│  │  │  │  │  │  ├── c15.pem
│  │  │  │  │  │  ├── c16.pem
│  │  │  │  │  │  ├── c17.pem
│  │  │  │  │  │  ├── c18.pem
│  │  │  │  │  │  ├── c19.pem
│  │  │  │  │  │  ├── c20.pem
│  │  │  │  │  │  ├── int.opensslconf
│  │  │  │  │  │  │ long.sh
│  │  │  │  │  ├── dir1
│  │  │  │  │  │  │ test-ca.crt
│  │  │  │  │  ├── dir2
│  │  │  │  │  │  ├── test-ca.crt
│  │  │  │  │  │  │ test-ca2.crt
│  │  │  │  │  ├── dir3
│  │  │  │  │  │  ├── Readme
│  │  │  │  │  │  ├── test-ca.crt
│  │  │  │  │  │  │ test-ca2.crt
│  │  │  │  │  ├── dir4
│  │  │  │  │  │  ├── Readme
│  │  │  │  │  │  ├── cert11.crt
│  │  │  │  │  │  ├── cert12.crt
│  │  │  │  │  │  ├── cert13.crt
│  │  │  │  │  │  ├── cert14.crt
│  │  │  │  │  │  ├── cert21.crt
│  │  │  │  │  │  ├── cert22.crt
│  │  │  │  │  │  ├── cert23.crt
│  │  │  │  │  │  ├── cert31.crt
│  │  │  │  │  │  ├── cert32.crt
│  │  │  │  │  │  ├── cert33.crt
│  │  │  │  │  │  ├── cert34.crt
│  │  │  │  │  │  ├── cert41.crt
│  │  │  │  │  │  ├── cert42.crt
│  │  │  │  │  │  ├── cert43.crt
│  │  │  │  │  │  ├── cert44.crt
│  │  │  │  │  │  ├── cert45.crt
│  │  │  │  │  │  ├── cert51.crt
│  │  │  │  │  │  ├── cert52.crt
│  │  │  │  │  │  ├── cert53.crt
│  │  │  │  │  │  ├── cert54.crt
│  │  │  │  │  │  ├── cert61.crt
│  │  │  │  │  │  ├── cert62.crt
│  │  │  │  │  │  ├── cert63.crt
│  │  │  │  │  │  ├── cert71.crt
│  │  │  │  │  │  ├── cert72.crt
│  │  │  │  │  │  ├── cert73.crt
│  │  │  │  │  │  ├── cert74.crt
│  │  │  │  │  │  ├── cert81.crt
│  │  │  │  │  │  ├── cert82.crt
│  │  │  │  │  │  ├── cert83.crt
│  │  │  │  │  │  ├── cert91.crt
│  │  │  │  │  │  │ cert92.crt
│  │  │  │  │  ├── ec_224_prv.comp.pem
│  │  │  │  │  ├── ec_224_prv.pem
│  │  │  │  │  ├── ec_224_pub.comp.pem
│  │  │  │  │  ├── ec_224_pub.pem
│  │  │  │  │  ├── ec_256_long_prv.der
│  │  │  │  │  ├── ec_256_long_prv.pem
│  │  │  │  │  ├── ec_256_prv.comp.pem
│  │  │  │  │  ├── ec_256_prv.pem
│  │  │  │  │  ├── ec_256_pub.comp.pem
│  │  │  │  │  ├── ec_256_pub.pem
│  │  │  │  │  ├── ec_384_prv.comp.pem
│  │  │  │  │  ├── ec_384_prv.pem
│  │  │  │  │  ├── ec_384_pub.comp.pem
│  │  │  │  │  ├── ec_384_pub.pem
│  │  │  │  │  ├── ec_521_prv.comp.pem
│  │  │  │  │  ├── ec_521_prv.der
│  │  │  │  │  ├── ec_521_prv.pem
│  │  │  │  │  ├── ec_521_pub.comp.pem
│  │  │  │  │  ├── ec_521_pub.der
│  │  │  │  │  ├── ec_521_pub.pem
│  │  │  │  │  ├── ec_521_short_prv.der
│  │  │  │  │  ├── ec_521_short_prv.pem
│  │  │  │  │  ├── ec_bp256_prv.comp.pem
│  │  │  │  │  ├── ec_bp256_prv.pem
│  │  │  │  │  ├── ec_bp256_pub.comp.pem
│  │  │  │  │  ├── ec_bp256_pub.pem
│  │  │  │  │  ├── ec_bp384_prv.comp.pem
│  │  │  │  │  ├── ec_bp384_prv.pem
│  │  │  │  │  ├── ec_bp384_pub.comp.pem
│  │  │  │  │  ├── ec_bp384_pub.pem
│  │  │  │  │  ├── ec_bp512_prv.comp.pem
│  │  │  │  │  ├── ec_bp512_prv.der
│  │  │  │  │  ├── ec_bp512_prv.pem
│  │  │  │  │  ├── ec_bp512_pub.comp.pem
│  │  │  │  │  ├── ec_bp512_pub.der
│  │  │  │  │  ├── ec_bp512_pub.pem
│  │  │  │  │  ├── ec_prv.pk8.der
│  │  │  │  │  ├── ec_prv.pk8.pem
│  │  │  │  │  ├── ec_prv.pk8.pw.der
│  │  │  │  │  ├── ec_prv.pk8.pw.pem
│  │  │  │  │  ├── ec_prv.pk8nopub.der
│  │  │  │  │  ├── ec_prv.pk8nopub.pem
│  │  │  │  │  ├── ec_prv.pk8nopubparam.der
│  │  │  │  │  ├── ec_prv.pk8nopubparam.pem
│  │  │  │  │  ├── ec_prv.pk8param.der
│  │  │  │  │  ├── ec_prv.pk8param.pem
│  │  │  │  │  ├── ec_prv.sec1.comp.pem
│  │  │  │  │  ├── ec_prv.sec1.der
│  │  │  │  │  ├── ec_prv.sec1.pem
│  │  │  │  │  ├── ec_prv.sec1.pw.pem
│  │  │  │  │  ├── ec_prv.specdom.der
│  │  │  │  │  ├── ec_pub.comp.pem
│  │  │  │  │  ├── ec_pub.der
│  │  │  │  │  ├── ec_pub.pem
│  │  │  │  │  ├── ec_x25519_prv.der
│  │  │  │  │  ├── ec_x25519_prv.pem
│  │  │  │  │  ├── ec_x25519_pub.der
│  │  │  │  │  ├── ec_x25519_pub.pem
│  │  │  │  │  ├── ec_x448_prv.der
│  │  │  │  │  ├── ec_x448_prv.pem
│  │  │  │  │  ├── ec_x448_pub.der
│  │  │  │  │  ├── ec_x448_pub.pem
│  │  │  │  │  ├── ecdsa_secp256r1.crt
│  │  │  │  │  ├── ecdsa_secp256r1.key
│  │  │  │  │  ├── ecdsa_secp384r1.crt
│  │  │  │  │  ├── ecdsa_secp384r1.key
│  │  │  │  │  ├── ecdsa_secp521r1.crt
│  │  │  │  │  ├── ecdsa_secp521r1.key
│  │  │  │  │  ├── enco-ca-prstr.pem
│  │  │  │  │  ├── enco-cert-utf8str.pem
│  │  │  │  │  ├── format_gen.key
│  │  │  │  │  ├── format_gen.pub
│  │  │  │  │  ├── format_pkcs12.fmt
│  │  │  │  │  ├── format_rsa.key
│  │  │  │  │  ├── hash_file_1
│  │  │  │  │  ├── hash_file_2
│  │  │  │  │  ├── hash_file_3
│  │  │  │  │  ├── hash_file_4
│  │  │  │  │  ├── hash_file_5
│  │  │  │  │  ├── keyUsage.decipherOnly.crt
│  │  │  │  │  ├── lms_hash-sigs_sha256_m32_h5_lmots_sha256_n32_w8_aux
│  │  │  │  │  ├── lms_hash-sigs_sha256_m32_h5_lmots_sha256_n32_w8_prv
│  │  │  │  │  ├── lms_hash-sigs_sha256_m32_h5_lmots_sha256_n32_w8_pub
│  │  │  │  │  ├── lms_hsslms_sha256_m32_h5_lmots_sha256_n32_w8_prv
│  │  │  │  │  ├── lms_pyhsslms_sha256_m32_h5_lmots_sha256_n32_w8_prv
│  │  │  │  │  ├── lms_pyhsslms_sha256_m32_h5_lmots_sha256_n32_w8_pub
│  │  │  │  │  ├── mpi_16
│  │  │  │  │  ├── mpi_too_big
│  │  │  │  │  ├── opensslcnf
│  │  │  │  │  │  │ server9.crt.v3_ext
│  │  │  │  │  ├── parse_input
│  │  │  │  │  │  ├── bitstring-in-dn.pem
│  │  │  │  │  │  ├── cert_example_multi.crt
│  │  │  │  │  │  ├── cert_example_multi_nocn.crt
│  │  │  │  │  │  ├── cert_md5.crt
│  │  │  │  │  │  ├── cert_sha1.crt
│  │  │  │  │  │  ├── cert_sha224.crt
│  │  │  │  │  │  ├── cert_sha256.crt
│  │  │  │  │  │  ├── cert_sha384.crt
│  │  │  │  │  │  ├── cert_sha512.crt
│  │  │  │  │  │  ├── cli-rsa-sha256-badalg.crt.der
│  │  │  │  │  │  ├── crl-ec-sha1.pem
│  │  │  │  │  │  ├── crl-ec-sha224.pem
│  │  │  │  │  │  ├── crl-ec-sha256.pem
│  │  │  │  │  │  ├── crl-ec-sha384.pem
│  │  │  │  │  │  ├── crl-ec-sha512.pem
│  │  │  │  │  │  ├── crl-idp.pem
│  │  │  │  │  │  ├── crl-idpnc.pem
│  │  │  │  │  │  ├── crl-malformed-trailing-spaces.pem
│  │  │  │  │  │  ├── crl-rsa-pss-sha1.pem
│  │  │  │  │  │  ├── crl-rsa-pss-sha224.pem
│  │  │  │  │  │  ├── crl-rsa-pss-sha256.pem
│  │  │  │  │  │  ├── crl-rsa-pss-sha384.pem
│  │  │  │  │  │  ├── crl-rsa-pss-sha512.pem
│  │  │  │  │  │  ├── crl_expired.pem
│  │  │  │  │  │  ├── crl_md5.pem
│  │  │  │  │  │  ├── crl_sha1.pem
│  │  │  │  │  │  ├── crl_sha224.pem
│  │  │  │  │  │  ├── crl_sha256.pem
│  │  │  │  │  │  ├── crl_sha384.pem
│  │  │  │  │  │  ├── crl_sha512.pem
│  │  │  │  │  │  ├── keyUsage.decipherOnly.crt
│  │  │  │  │  │  ├── multiple_san.crt
│  │  │  │  │  │  ├── non-ascii-string-in-issuer.crt
│  │  │  │  │  │  ├── rsa_multiple_san_uri.crt.der
│  │  │  │  │  │  ├── rsa_single_san_uri.crt.der
│  │  │  │  │  │  ├── server1-ms.req.sha256
│  │  │  │  │  │  ├── server1.cert_type.crt
│  │  │  │  │  │  ├── server1.crt
│  │  │  │  │  │  ├── server1.crt.der
│  │  │  │  │  │  ├── server1.ext_ku.crt
│  │  │  │  │  │  ├── server1.key_usage.crt
│  │  │  │  │  │  ├── server1.req.commas.sha256
│  │  │  │  │  │  ├── server1.req.md5
│  │  │  │  │  │  ├── server1.req.sha1
│  │  │  │  │  │  ├── server1.req.sha224
│  │  │  │  │  │  ├── server1.req.sha256
│  │  │  │  │  │  ├── server1.req.sha384
│  │  │  │  │  │  ├── server1.req.sha512
│  │  │  │  │  │  ├── server1_pathlen_int_max-1.crt
│  │  │  │  │  │  ├── server1_pathlen_int_max.crt
│  │  │  │  │  │  ├── server2.crt
│  │  │  │  │  │  ├── server2.crt.der
│  │  │  │  │  │  ├── server3.crt
│  │  │  │  │  │  ├── server4.crt
│  │  │  │  │  │  ├── server5-directoryname-seq-malformed.crt.der
│  │  │  │  │  │  ├── server5-directoryname.crt.der
│  │  │  │  │  │  ├── server5-fan.crt.der
│  │  │  │  │  │  ├── server5-non-compliant.crt
│  │  │  │  │  │  ├── server5-nonprintable_othername.crt.der
│  │  │  │  │  │  ├── server5-othername.crt.der
│  │  │  │  │  │  ├── server5-second-directoryname-oid-malformed.crt.der
│  │  │  │  │  │  ├── server5-sha1.crt
│  │  │  │  │  │  ├── server5-sha224.crt
│  │  │  │  │  │  ├── server5-sha384.crt
│  │  │  │  │  │  ├── server5-sha512.crt
│  │  │  │  │  │  ├── server5-two-directorynames.crt.der
│  │  │  │  │  │  ├── server5-unsupported_othername.crt.der
│  │  │  │  │  │  ├── server5.crt
│  │  │  │  │  │  ├── server5.req.sha1
│  │  │  │  │  │  ├── server5.req.sha224
│  │  │  │  │  │  ├── server5.req.sha256
│  │  │  │  │  │  ├── server5.req.sha384
│  │  │  │  │  │  ├── server5.req.sha512
│  │  │  │  │  │  ├── server7_all_space.crt
│  │  │  │  │  │  ├── server7_int-ca.crt
│  │  │  │  │  │  ├── server7_pem_space.crt
│  │  │  │  │  │  ├── server7_trailing_space.crt
│  │  │  │  │  │  ├── server9-sha224.crt
│  │  │  │  │  │  ├── server9-sha256.crt
│  │  │  │  │  │  ├── server9-sha384.crt
│  │  │  │  │  │  ├── server9-sha512.crt
│  │  │  │  │  │  ├── server9.crt
│  │  │  │  │  │  ├── server9.req.sha1
│  │  │  │  │  │  ├── server9.req.sha224
│  │  │  │  │  │  ├── server9.req.sha256
│  │  │  │  │  │  ├── server9.req.sha384
│  │  │  │  │  │  ├── server9.req.sha512
│  │  │  │  │  │  ├── test-ca-any_policy.crt
│  │  │  │  │  │  ├── test-ca-any_policy_ec.crt
│  │  │  │  │  │  ├── test-ca-any_policy_with_qualifier.crt
│  │  │  │  │  │  ├── test-ca-any_policy_with_qualifier_ec.crt
│  │  │  │  │  │  ├── test-ca-multi_policy.crt
│  │  │  │  │  │  ├── test-ca-multi_policy_ec.crt
│  │  │  │  │  │  ├── test-ca-unsupported_policy.crt
│  │  │  │  │  │  ├── test-ca-unsupported_policy_ec.crt
│  │  │  │  │  │  ├── test-ca.crt
│  │  │  │  │  │  ├── test-ca.crt.der
│  │  │  │  │  │  ├── test_cert_rfc822name.crt.der
│  │  │  │  │  │  ├── test_csr_v3_all.csr.der
│  │  │  │  │  │  ├── test_csr_v3_all_malformed_attributes_extension_request.csr.der
│  │  │  │  │  │  ├── test_csr_v3_all_malformed_attributes_extension_request_sequence_len1.csr.der
│  │  │  │  │  │  ├── test_csr_v3_all_malformed_attributes_extension_request_sequence_len2.csr.der
│  │  │  │  │  │  ├── test_csr_v3_all_malformed_attributes_extension_request_sequence_tag.csr.der
│  │  │  │  │  │  ├── test_csr_v3_all_malformed_attributes_extension_request_set_tag.csr.der
│  │  │  │  │  │  ├── test_csr_v3_all_malformed_attributes_id_tag.csr.der
│  │  │  │  │  │  ├── test_csr_v3_all_malformed_attributes_len1.csr.der
│  │  │  │  │  │  ├── test_csr_v3_all_malformed_attributes_len2.csr.der
│  │  │  │  │  │  ├── test_csr_v3_all_malformed_attributes_sequence_tag.csr.der
│  │  │  │  │  │  ├── test_csr_v3_all_malformed_duplicated_extension.csr.der
│  │  │  │  │  │  ├── test_csr_v3_all_malformed_extension_data_len1.csr.der
│  │  │  │  │  │  ├── test_csr_v3_all_malformed_extension_data_len2.csr.der
│  │  │  │  │  │  ├── test_csr_v3_all_malformed_extension_data_tag.csr.der
│  │  │  │  │  │  ├── test_csr_v3_all_malformed_extension_id_tag.csr.der
│  │  │  │  │  │  ├── test_csr_v3_all_malformed_extension_key_usage_bitstream_tag.csr.der
│  │  │  │  │  │  ├── test_csr_v3_all_malformed_extension_ns_cert_bitstream_tag.csr.der
│  │  │  │  │  │  ├── test_csr_v3_all_malformed_extension_subject_alt_name_sequence_tag.csr.der
│  │  │  │  │  │  ├── test_csr_v3_all_malformed_extension_type_oid.csr.der
│  │  │  │  │  │  ├── test_csr_v3_all_malformed_extensions_sequence_tag.csr.der
│  │  │  │  │  │  ├── test_csr_v3_keyUsage.csr.der
│  │  │  │  │  │  ├── test_csr_v3_nsCertType.csr.der
│  │  │  │  │  │  │ test_csr_v3_subjectAltName.csr.der
│  │  │  │  │  ├── passwd.psk
│  │  │  │  │  ├── pkcs7-rsa-expired.crt
│  │  │  │  │  ├── pkcs7-rsa-expired.der
│  │  │  │  │  ├── pkcs7-rsa-expired.key
│  │  │  │  │  ├── pkcs7-rsa-sha256-1.crt
│  │  │  │  │  ├── pkcs7-rsa-sha256-1.der
│  │  │  │  │  ├── pkcs7-rsa-sha256-1.key
│  │  │  │  │  ├── pkcs7-rsa-sha256-1.pem
│  │  │  │  │  ├── pkcs7-rsa-sha256-2.crt
│  │  │  │  │  ├── pkcs7-rsa-sha256-2.der
│  │  │  │  │  ├── pkcs7-rsa-sha256-2.key
│  │  │  │  │  ├── pkcs7-rsa-sha256-2.pem
│  │  │  │  │  ├── pkcs7-rsa-sha256-3.crt
│  │  │  │  │  ├── pkcs7-rsa-sha256-3.key
│  │  │  │  │  ├── pkcs7-rsa-sha256-3.pem
│  │  │  │  │  ├── pkcs7_data.bin
│  │  │  │  │  ├── pkcs7_data_1.bin
│  │  │  │  │  ├── pkcs7_data_3_signed.der
│  │  │  │  │  ├── pkcs7_data_cert_encrypted.der
│  │  │  │  │  ├── pkcs7_data_cert_signed_sha1.der
│  │  │  │  │  ├── pkcs7_data_cert_signed_sha256.der
│  │  │  │  │  ├── pkcs7_data_cert_signed_sha512.der
│  │  │  │  │  ├── pkcs7_data_cert_signed_v2.der
│  │  │  │  │  ├── pkcs7_data_cert_signeddata_sha256.der
│  │  │  │  │  ├── pkcs7_data_multiple_certs_signed.der
│  │  │  │  │  ├── pkcs7_data_multiple_signed.der
│  │  │  │  │  ├── pkcs7_data_no_signers.der
│  │  │  │  │  ├── pkcs7_data_rsa_expired.der
│  │  │  │  │  ├── pkcs7_data_signed_badcert.der
│  │  │  │  │  ├── pkcs7_data_signed_badsigner.der
│  │  │  │  │  ├── pkcs7_data_signed_badsigner1_badsize.der
│  │  │  │  │  ├── pkcs7_data_signed_badsigner1_badtag.der
│  │  │  │  │  ├── pkcs7_data_signed_badsigner1_fuzzbad.der
│  │  │  │  │  ├── pkcs7_data_signed_badsigner2_badsize.der
│  │  │  │  │  ├── pkcs7_data_signed_badsigner2_badtag.der
│  │  │  │  │  ├── pkcs7_data_signed_badsigner2_fuzzbad.der
│  │  │  │  │  ├── pkcs7_data_with_signature.der
│  │  │  │  │  ├── pkcs7_data_without_cert_signed.der
│  │  │  │  │  ├── pkcs7_signerInfo_1_serial_invalid_tag_after_long_name.der
│  │  │  │  │  ├── pkcs7_signerInfo_2_invalid_tag.der
│  │  │  │  │  ├── pkcs7_signerInfo_issuer_invalid_size.der
│  │  │  │  │  ├── pkcs7_signerInfo_serial_invalid_size.der
│  │  │  │  │  ├── pkcs7_zerolendata.bin
│  │  │  │  │  ├── pkcs7_zerolendata_detached.der
│  │  │  │  │  ├── print_c.pl
│  │  │  │  │  ├── rsa4096_prv.der
│  │  │  │  │  ├── rsa4096_prv.pem
│  │  │  │  │  ├── rsa4096_pub.der
│  │  │  │  │  ├── rsa4096_pub.pem
│  │  │  │  │  ├── rsa512.key
│  │  │  │  │  ├── rsa521.key
│  │  │  │  │  ├── rsa522.key
│  │  │  │  │  ├── rsa528.key
│  │  │  │  │  ├── rsa_multiple_san_uri.key
│  │  │  │  │  ├── rsa_pkcs1_1024_3des.pem
│  │  │  │  │  ├── rsa_pkcs1_1024_aes128.pem
│  │  │  │  │  ├── rsa_pkcs1_1024_aes192.pem
│  │  │  │  │  ├── rsa_pkcs1_1024_aes256.pem
│  │  │  │  │  ├── rsa_pkcs1_1024_clear.pem
│  │  │  │  │  ├── rsa_pkcs1_1024_des.pem
│  │  │  │  │  ├── rsa_pkcs1_2048_3des.pem
│  │  │  │  │  ├── rsa_pkcs1_2048_aes128.pem
│  │  │  │  │  ├── rsa_pkcs1_2048_aes192.pem
│  │  │  │  │  ├── rsa_pkcs1_2048_aes256.pem
│  │  │  │  │  ├── rsa_pkcs1_2048_clear.pem
│  │  │  │  │  ├── rsa_pkcs1_2048_des.pem
│  │  │  │  │  ├── rsa_pkcs1_2048_public.der
│  │  │  │  │  ├── rsa_pkcs1_2048_public.pem
│  │  │  │  │  ├── rsa_pkcs1_4096_3des.pem
│  │  │  │  │  ├── rsa_pkcs1_4096_aes128.pem
│  │  │  │  │  ├── rsa_pkcs1_4096_aes192.pem
│  │  │  │  │  ├── rsa_pkcs1_4096_aes256.pem
│  │  │  │  │  ├── rsa_pkcs1_4096_clear.pem
│  │  │  │  │  ├── rsa_pkcs1_4096_des.pem
│  │  │  │  │  ├── rsa_pkcs8_1024_public.der
│  │  │  │  │  ├── rsa_pkcs8_2048_public.der
│  │  │  │  │  ├── rsa_pkcs8_2048_public.pem
│  │  │  │  │  ├── rsa_pkcs8_pbe_sha1_1024_2des.der
│  │  │  │  │  ├── rsa_pkcs8_pbe_sha1_1024_2des.pem
│  │  │  │  │  ├── rsa_pkcs8_pbe_sha1_1024_3des.der
│  │  │  │  │  ├── rsa_pkcs8_pbe_sha1_1024_3des.pem
│  │  │  │  │  ├── rsa_pkcs8_pbe_sha1_2048_2des.der
│  │  │  │  │  ├── rsa_pkcs8_pbe_sha1_2048_2des.pem
│  │  │  │  │  ├── rsa_pkcs8_pbe_sha1_2048_3des.der
│  │  │  │  │  ├── rsa_pkcs8_pbe_sha1_2048_3des.pem
│  │  │  │  │  ├── rsa_pkcs8_pbe_sha1_4096_2des.der
│  │  │  │  │  ├── rsa_pkcs8_pbe_sha1_4096_2des.pem
│  │  │  │  │  ├── rsa_pkcs8_pbe_sha1_4096_3des.der
│  │  │  │  │  ├── rsa_pkcs8_pbe_sha1_4096_3des.pem
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_1024_3des.der
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_1024_3des.pem
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_1024_3des_sha224.der
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_1024_3des_sha224.pem
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_1024_3des_sha256.der
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_1024_3des_sha256.pem
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_1024_3des_sha384.der
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_1024_3des_sha384.pem
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_1024_3des_sha512.der
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_1024_3des_sha512.pem
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_1024_des.der
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_1024_des.pem
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_1024_des_sha224.der
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_1024_des_sha224.pem
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_1024_des_sha256.der
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_1024_des_sha256.pem
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_1024_des_sha384.der
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_1024_des_sha384.pem
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_1024_des_sha512.der
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_1024_des_sha512.pem
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_2048_3des.der
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_2048_3des.pem
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_2048_3des_sha224.der
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_2048_3des_sha224.pem
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_2048_3des_sha256.der
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_2048_3des_sha256.pem
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_2048_3des_sha384.der
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_2048_3des_sha384.pem
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_2048_3des_sha512.der
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_2048_3des_sha512.pem
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_2048_aes128cbc_sha384.der
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_2048_aes128cbc_sha384.pem
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_2048_aes192cbc_sha384.der
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_2048_aes192cbc_sha384.pem
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_2048_aes256cbc_sha384.der
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_2048_aes256cbc_sha384.pem
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_2048_des.der
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_2048_des.pem
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_2048_des_sha224.der
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_2048_des_sha224.pem
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_2048_des_sha256.der
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_2048_des_sha256.pem
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_2048_des_sha384.der
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_2048_des_sha384.pem
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_2048_des_sha512.der
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_2048_des_sha512.pem
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_4096_3des.der
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_4096_3des.pem
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_4096_3des_sha224.der
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_4096_3des_sha224.pem
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_4096_3des_sha256.der
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_4096_3des_sha256.pem
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_4096_3des_sha384.der
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_4096_3des_sha384.pem
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_4096_3des_sha512.der
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_4096_3des_sha512.pem
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_4096_des.der
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_4096_des.pem
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_4096_des_sha224.der
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_4096_des_sha224.pem
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_4096_des_sha256.der
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_4096_des_sha256.pem
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_4096_des_sha384.der
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_4096_des_sha384.pem
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_4096_des_sha512.der
│  │  │  │  │  ├── rsa_pkcs8_pbes2_pbkdf2_4096_des_sha512.pem
│  │  │  │  │  ├── rsa_single_san_uri.crt.der
│  │  │  │  │  ├── rsa_single_san_uri.key
│  │  │  │  │  ├── server1-nospace.crt
│  │  │  │  │  ├── server1-v1.crt
│  │  │  │  │  ├── server1.80serial.crt
│  │  │  │  │  ├── server1.allSubjectAltNames.crt
│  │  │  │  │  ├── server1.asciichars.crt
│  │  │  │  │  ├── server1.ca.crt
│  │  │  │  │  ├── server1.ca.der
│  │  │  │  │  ├── server1.ca_noauthid.crt
│  │  │  │  │  ├── server1.cert_type.crt
│  │  │  │  │  ├── server1.cert_type.crt.openssl.v3_ext
│  │  │  │  │  ├── server1.cert_type_noauthid.crt
│  │  │  │  │  ├── server1.commas.crt
│  │  │  │  │  ├── server1.crt
│  │  │  │  │  ├── server1.crt.openssl.v3_ext
│  │  │  │  │  ├── server1.csr
│  │  │  │  │  ├── server1.der
│  │  │  │  │  ├── server1.hashsymbol.crt
│  │  │  │  │  ├── server1.key
│  │  │  │  │  ├── server1.key.der
│  │  │  │  │  ├── server1.key_ext_usage.crt
│  │  │  │  │  ├── server1.key_ext_usages.crt
│  │  │  │  │  ├── server1.key_usage.crt
│  │  │  │  │  ├── server1.key_usage.crt.openssl.v3_ext
│  │  │  │  │  ├── server1.key_usage_noauthid.crt
│  │  │  │  │  ├── server1.long_serial.crt
│  │  │  │  │  ├── server1.long_serial_FF.crt
│  │  │  │  │  ├── server1.noauthid.crt
│  │  │  │  │  ├── server1.pubkey
│  │  │  │  │  ├── server1.pubkey.der
│  │  │  │  │  ├── server1.req.cert_type
│  │  │  │  │  ├── server1.req.cert_type_empty
│  │  │  │  │  ├── server1.req.key_usage
│  │  │  │  │  ├── server1.req.key_usage_empty
│  │  │  │  │  ├── server1.req.ku-ct
│  │  │  │  │  ├── server1.req.md5
│  │  │  │  │  ├── server1.req.sha1
│  │  │  │  │  ├── server1.req.sha224
│  │  │  │  │  ├── server1.req.sha256
│  │  │  │  │  ├── server1.req.sha256.conf
│  │  │  │  │  ├── server1.req.sha256.ext
│  │  │  │  │  ├── server1.req.sha384
│  │  │  │  │  ├── server1.req.sha512
│  │  │  │  │  ├── server1.spaces.crt
│  │  │  │  │  ├── server1.v1.crt
│  │  │  │  │  ├── server10-badsign.crt
│  │  │  │  │  ├── server10-bs_int3.pem
│  │  │  │  │  ├── server10.crt
│  │  │  │  │  ├── server10.key
│  │  │  │  │  ├── server10_int3-bs.pem
│  │  │  │  │  ├── server10_int3_int-ca2.crt
│  │  │  │  │  ├── server10_int3_int-ca2_ca.crt
│  │  │  │  │  ├── server10_int3_spurious_int-ca2.crt
│  │  │  │  │  ├── server1_ca.crt
│  │  │  │  │  ├── server1_csr.opensslconf
│  │  │  │  │  ├── server2-badsign.crt
│  │  │  │  │  ├── server2-sha256.crt
│  │  │  │  │  ├── server2-sha256.crt.der
│  │  │  │  │  ├── server2-v1-chain.crt
│  │  │  │  │  ├── server2-v1.crt
│  │  │  │  │  ├── server2.crt
│  │  │  │  │  ├── server2.crt.der
│  │  │  │  │  ├── server2.der
│  │  │  │  │  ├── server2.key
│  │  │  │  │  ├── server2.key.der
│  │  │  │  │  ├── server2.key.enc
│  │  │  │  │  ├── server2.ku-ds.crt
│  │  │  │  │  ├── server2.ku-ds_ke.crt
│  │  │  │  │  ├── server2.ku-ka.crt
│  │  │  │  │  ├── server2.ku-ke.crt
│  │  │  │  │  ├── server3.crt
│  │  │  │  │  ├── server3.key
│  │  │  │  │  ├── server4.crt
│  │  │  │  │  ├── server4.key
│  │  │  │  │  ├── server5-badsign.crt
│  │  │  │  │  ├── server5-der0.crt
│  │  │  │  │  ├── server5-der1a.crt
│  │  │  │  │  ├── server5-der1b.crt
│  │  │  │  │  ├── server5-der2.crt
│  │  │  │  │  ├── server5-der4.crt
│  │  │  │  │  ├── server5-der8.crt
│  │  │  │  │  ├── server5-der9.crt
│  │  │  │  │  ├── server5-expired.crt
│  │  │  │  │  ├── server5-future.crt
│  │  │  │  │  ├── server5-selfsigned.crt
│  │  │  │  │  ├── server5-sha1.crt
│  │  │  │  │  ├── server5-sha224.crt
│  │  │  │  │  ├── server5-sha384.crt
│  │  │  │  │  ├── server5-sha512.crt
│  │  │  │  │  ├── server5-ss-expired.crt
│  │  │  │  │  ├── server5-ss-forgeca.crt
│  │  │  │  │  ├── server5-tricky-ip-san-malformed-len.crt.der
│  │  │  │  │  ├── server5-tricky-ip-san.crt.der
│  │  │  │  │  ├── server5.crt
│  │  │  │  │  ├── server5.crt.der
│  │  │  │  │  ├── server5.crt.openssl.v3_ext
│  │  │  │  │  ├── server5.eku-cli.crt
│  │  │  │  │  ├── server5.eku-cs.crt
│  │  │  │  │  ├── server5.eku-cs_any.crt
│  │  │  │  │  ├── server5.eku-srv.crt
│  │  │  │  │  ├── server5.eku-srv_cli.crt
│  │  │  │  │  ├── server5.key
│  │  │  │  │  ├── server5.key.der
│  │  │  │  │  ├── server5.key.enc
│  │  │  │  │  ├── server5.ku-ds.crt
│  │  │  │  │  ├── server5.ku-ka.crt
│  │  │  │  │  ├── server5.ku-ke.crt
│  │  │  │  │  ├── server5.req.ku.sha1
│  │  │  │  │  ├── server6-ss-child.crt
│  │  │  │  │  ├── server6-ss-child.crt.openssl.v3_ext
│  │  │  │  │  ├── server6.crt
│  │  │  │  │  ├── server6.key
│  │  │  │  │  ├── server7-badsign.crt
│  │  │  │  │  ├── server7-expired.crt
│  │  │  │  │  ├── server7-future.crt
│  │  │  │  │  ├── server7.crt
│  │  │  │  │  ├── server7.key
│  │  │  │  │  ├── server7_int-ca-exp.crt
│  │  │  │  │  ├── server7_int-ca.crt
│  │  │  │  │  ├── server7_int-ca_ca2.crt
│  │  │  │  │  ├── server7_spurious_int-ca.crt
│  │  │  │  │  ├── server8.crt
│  │  │  │  │  ├── server8.key
│  │  │  │  │  ├── server8_int-ca2.crt
│  │  │  │  │  ├── server9-bad-mgfhash.crt
│  │  │  │  │  ├── server9-bad-saltlen.crt
│  │  │  │  │  ├── server9-badsign.crt
│  │  │  │  │  ├── server9-defaults.crt
│  │  │  │  │  ├── server9-sha224.crt
│  │  │  │  │  ├── server9-sha256.crt
│  │  │  │  │  ├── server9-sha384.crt
│  │  │  │  │  ├── server9-sha512.crt
│  │  │  │  │  ├── server9-with-ca.crt
│  │  │  │  │  ├── server9.crt
│  │  │  │  │  ├── server9.key
│  │  │  │  │  ├── simplepass.psk
│  │  │  │  │  ├── test-ca-alt-good.crt
│  │  │  │  │  ├── test-ca-alt.crt
│  │  │  │  │  ├── test-ca-alt.csr
│  │  │  │  │  ├── test-ca-alt.key
│  │  │  │  │  ├── test-ca-good-alt.crt
│  │  │  │  │  ├── test-ca-sha1.crt
│  │  │  │  │  ├── test-ca-sha1.crt.der
│  │  │  │  │  ├── test-ca-sha256.crt
│  │  │  │  │  ├── test-ca-sha256.crt.der
│  │  │  │  │  ├── test-ca-v1.crt
│  │  │  │  │  ├── test-ca.crt
│  │  │  │  │  ├── test-ca.der
│  │  │  │  │  ├── test-ca.key
│  │  │  │  │  ├── test-ca.key.der
│  │  │  │  │  ├── test-ca.opensslconf
│  │  │  │  │  ├── test-ca.req.sha256
│  │  │  │  │  ├── test-ca.req_ec.sha256
│  │  │  │  │  ├── test-ca.server1.db
│  │  │  │  │  ├── test-ca.server1.future-crl.db
│  │  │  │  │  ├── test-ca.server1.future-crl.opensslconf
│  │  │  │  │  ├── test-ca.server1.opensslconf
│  │  │  │  │  ├── test-ca.server1.test_serial.opensslconf
│  │  │  │  │  ├── test-ca2-expired.crt
│  │  │  │  │  ├── test-ca2.crt
│  │  │  │  │  ├── test-ca2.crt.der
│  │  │  │  │  ├── test-ca2.key
│  │  │  │  │  ├── test-ca2.key.der
│  │  │  │  │  ├── test-ca2.key.enc
│  │  │  │  │  ├── test-ca2.ku-crl.crt
│  │  │  │  │  ├── test-ca2.ku-crl.crt.openssl.v3_ext
│  │  │  │  │  ├── test-ca2.ku-crt.crt
│  │  │  │  │  ├── test-ca2.ku-crt.crt.openssl.v3_ext
│  │  │  │  │  ├── test-ca2.ku-crt_crl.crt
│  │  │  │  │  ├── test-ca2.ku-crt_crl.crt.openssl.v3_ext
│  │  │  │  │  ├── test-ca2.ku-ds.crt
│  │  │  │  │  ├── test-ca2.ku-ds.crt.openssl.v3_ext
│  │  │  │  │  ├── test-ca2.req.sha256
│  │  │  │  │  ├── test-ca2_cat-future-invalid.crt
│  │  │  │  │  ├── test-ca2_cat-future-present.crt
│  │  │  │  │  ├── test-ca2_cat-past-invalid.crt
│  │  │  │  │  ├── test-ca2_cat-past-present.crt
│  │  │  │  │  ├── test-ca2_cat-present-future.crt
│  │  │  │  │  ├── test-ca2_cat-present-past.crt
│  │  │  │  │  ├── test-ca_cat12.crt
│  │  │  │  │  ├── test-ca_cat21.crt
│  │  │  │  │  ├── test-ca_printable.crt
│  │  │  │  │  ├── test-ca_unenc.key
│  │  │  │  │  ├── test-ca_uppercase.crt
│  │  │  │  │  ├── test-ca_utf8.crt
│  │  │  │  │  ├── test-int-ca-exp.crt
│  │  │  │  │  ├── test-int-ca.crt
│  │  │  │  │  ├── test-int-ca.key
│  │  │  │  │  ├── test-int-ca2.crt
│  │  │  │  │  ├── test-int-ca2.key
│  │  │  │  │  ├── test-int-ca3-badsign.crt
│  │  │  │  │  ├── test-int-ca3.crt
│  │  │  │  │  ├── test-int-ca3.key
│  │  │  │  │  ├── test_certs.h.jinja2
│  │  │  │  │  │ tls13_early_data.txt
│  │  │  │  ├── docker
│  │  │  │  │  ├── bionic
│  │  │  │  │  │  │ Dockerfile
│  │  │  │  ├── include
│  │  │  │  │  ├── alt-dummy
│  │  │  │  │  │  ├── aes_alt.h
│  │  │  │  │  │  ├── aria_alt.h
│  │  │  │  │  │  ├── camellia_alt.h
│  │  │  │  │  │  ├── ccm_alt.h
│  │  │  │  │  │  ├── chacha20_alt.h
│  │  │  │  │  │  ├── chachapoly_alt.h
│  │  │  │  │  │  ├── cmac_alt.h
│  │  │  │  │  │  ├── des_alt.h
│  │  │  │  │  │  ├── dhm_alt.h
│  │  │  │  │  │  ├── ecjpake_alt.h
│  │  │  │  │  │  ├── ecp_alt.h
│  │  │  │  │  │  ├── gcm_alt.h
│  │  │  │  │  │  ├── md5_alt.h
│  │  │  │  │  │  ├── nist_kw_alt.h
│  │  │  │  │  │  ├── poly1305_alt.h
│  │  │  │  │  │  ├── ripemd160_alt.h
│  │  │  │  │  │  ├── rsa_alt.h
│  │  │  │  │  │  ├── sha1_alt.h
│  │  │  │  │  │  ├── sha256_alt.h
│  │  │  │  │  │  │ sha512_alt.h
│  │  │  │  │  ├── alt-extra
│  │  │  │  │  │  ├── psa
│  │  │  │  │  │  │  │ crypto.h
│  │  │  │  │  ├── baremetal-override
│  │  │  │  │  │  │ time.h
│  │  │  │  │  ├── spe
│  │  │  │  │  │  │ crypto_spe.h
│  │  │  │  │  ├── test
│  │  │  │  │  │  ├── arguments.h
│  │  │  │  │  │  ├── asn1_helpers.h
│  │  │  │  │  │  ├── bignum_helpers.h
│  │  │  │  │  │  ├── certs.h
│  │  │  │  │  │  ├── constant_flow.h
│  │  │  │  │  │  ├── drivers
│  │  │  │  │  │  │  ├── aead.h
│  │  │  │  │  │  │  ├── asymmetric_encryption.h
│  │  │  │  │  │  │  ├── cipher.h
│  │  │  │  │  │  │  ├── config_test_driver.h
│  │  │  │  │  │  │  ├── crypto_config_test_driver_extension.h
│  │  │  │  │  │  │  ├── hash.h
│  │  │  │  │  │  │  ├── key_agreement.h
│  │  │  │  │  │  │  ├── key_management.h
│  │  │  │  │  │  │  ├── mac.h
│  │  │  │  │  │  │  ├── pake.h
│  │  │  │  │  │  │  ├── signature.h
│  │  │  │  │  │  │  │ test_driver.h
│  │  │  │  │  │  ├── fake_external_rng_for_test.h
│  │  │  │  │  │  ├── helpers.h
│  │  │  │  │  │  ├── macros.h
│  │  │  │  │  │  ├── memory.h
│  │  │  │  │  │  ├── psa_crypto_helpers.h
│  │  │  │  │  │  ├── psa_exercise_key.h
│  │  │  │  │  │  ├── psa_helpers.h
│  │  │  │  │  │  ├── psa_memory_poisoning_wrappers.h
│  │  │  │  │  │  ├── psa_test_wrappers.h
│  │  │  │  │  │  ├── random.h
│  │  │  │  │  │  ├── ssl_helpers.h
│  │  │  │  │  │  │ threading_helpers.h
│  │  │  │  ├── opt-testcases
│  │  │  │  │  ├── sample.sh
│  │  │  │  │  ├── tls13-compat.sh
│  │  │  │  │  ├── tls13-kex-modes.sh
│  │  │  │  │  │ tls13-misc.sh
│  │  │  │  ├── scripts
│  │  │  │  │  ├── all-in-docker.sh
│  │  │  │  │  ├── all.sh
│  │  │  │  │  ├── analyze_outcomes.py
│  │  │  │  │  ├── audit-validity-dates.py
│  │  │  │  │  ├── basic-build-test.sh
│  │  │  │  │  ├── basic-in-docker.sh
│  │  │  │  │  ├── check-doxy-blocks.pl
│  │  │  │  │  ├── check-generated-files.sh
│  │  │  │  │  ├── check-python-files.sh
│  │  │  │  │  ├── check_files.py
│  │  │  │  │  ├── check_names.py
│  │  │  │  │  ├── check_option_lists.py
│  │  │  │  │  ├── check_test_cases.py
│  │  │  │  │  ├── components-basic-checks.sh
│  │  │  │  │  ├── components-build-system.sh
│  │  │  │  │  ├── components-compiler.sh
│  │  │  │  │  ├── components-configuration-crypto.sh
│  │  │  │  │  ├── components-configuration-platform.sh
│  │  │  │  │  ├── components-configuration-tls.sh
│  │  │  │  │  ├── components-configuration-x509.sh
│  │  │  │  │  ├── components-configuration.sh
│  │  │  │  │  ├── components-platform.sh
│  │  │  │  │  ├── components-psasim.sh
│  │  │  │  │  ├── components-sanitizers.sh
│  │  │  │  │  ├── depends.py
│  │  │  │  │  ├── docker_env.sh
│  │  │  │  │  ├── doxygen.sh
│  │  │  │  │  ├── generate_bignum_tests.py
│  │  │  │  │  ├── generate_ecp_tests.py
│  │  │  │  │  ├── generate_pkcs7_tests.py
│  │  │  │  │  ├── generate_psa_tests.py
│  │  │  │  │  ├── generate_psa_wrappers.py
│  │  │  │  │  ├── generate_test_cert_macros.py
│  │  │  │  │  ├── generate_test_code.py
│  │  │  │  │  ├── generate_tls13_compat_tests.py
│  │  │  │  │  ├── libtestdriver1_rewrite.pl
│  │  │  │  │  ├── list-identifiers.sh
│  │  │  │  │  ├── list_internal_identifiers.py
│  │  │  │  │  ├── psa_collect_statuses.py
│  │  │  │  │  ├── quiet
│  │  │  │  │  │  ├── cmake
│  │  │  │  │  │  ├── make
│  │  │  │  │  │  │ quiet.sh
│  │  │  │  │  ├── recursion.pl
│  │  │  │  │  ├── run-test-suites.pl
│  │  │  │  │  ├── run_demos.py
│  │  │  │  │  ├── scripts_path.py
│  │  │  │  │  ├── set_psa_test_dependencies.py
│  │  │  │  │  ├── tcp_client.pl
│  │  │  │  │  ├── test-ref-configs.pl
│  │  │  │  │  ├── test_config_checks.py
│  │  │  │  │  ├── test_config_script.py
│  │  │  │  │  ├── test_generate_test_code.py
│  │  │  │  │  ├── test_psa_compliance.py
│  │  │  │  │  ├── test_psa_constant_names.py
│  │  │  │  │  ├── test_zeroize.gdb
│  │  │  │  │  ├── translate_ciphers.py
│  │  │  │  │  │ travis-log-failure.sh
│  │  │  │  ├── src
│  │  │  │  │  ├── asn1_helpers.c
│  │  │  │  │  ├── bignum_helpers.c
│  │  │  │  │  ├── certs.c
│  │  │  │  │  ├── drivers
│  │  │  │  │  │  ├── hash.c
│  │  │  │  │  │  ├── platform_builtin_keys.c
│  │  │  │  │  │  ├── test_driver_aead.c
│  │  │  │  │  │  ├── test_driver_asymmetric_encryption.c
│  │  │  │  │  │  ├── test_driver_cipher.c
│  │  │  │  │  │  ├── test_driver_key_agreement.c
│  │  │  │  │  │  ├── test_driver_key_management.c
│  │  │  │  │  │  ├── test_driver_mac.c
│  │  │  │  │  │  ├── test_driver_pake.c
│  │  │  │  │  │  │ test_driver_signature.c
│  │  │  │  │  ├── fake_external_rng_for_test.c
│  │  │  │  │  ├── helpers.c
│  │  │  │  │  ├── psa_crypto_helpers.c
│  │  │  │  │  ├── psa_crypto_stubs.c
│  │  │  │  │  ├── psa_exercise_key.c
│  │  │  │  │  ├── psa_memory_poisoning_wrappers.c
│  │  │  │  │  ├── psa_test_wrappers.c
│  │  │  │  │  ├── random.c
│  │  │  │  │  ├── test_certs.h
│  │  │  │  │  ├── test_helpers
│  │  │  │  │  │  │ ssl_helpers.c
│  │  │  │  │  ├── test_memory.c
│  │  │  │  │  │ threading_helpers.c
│  │  │  │  ├── ssl-opt-in-docker.sh
│  │  │  │  ├── ssl-opt.sh
│  │  │  │  ├── suites
│  │  │  │  │  ├── helpers.function
│  │  │  │  │  ├── host_test.function
│  │  │  │  │  ├── main_test.function
│  │  │  │  │  ├── test_suite_aes.cbc.data
│  │  │  │  │  ├── test_suite_aes.cfb.data
│  │  │  │  │  ├── test_suite_aes.ctr.data
│  │  │  │  │  ├── test_suite_aes.ecb.data
│  │  │  │  │  ├── test_suite_aes.function
│  │  │  │  │  ├── test_suite_aes.ofb.data
│  │  │  │  │  ├── test_suite_aes.rest.data
│  │  │  │  │  ├── test_suite_aes.xts.data
│  │  │  │  │  ├── test_suite_alignment.data
│  │  │  │  │  ├── test_suite_alignment.function
│  │  │  │  │  ├── test_suite_aria.data
│  │  │  │  │  ├── test_suite_aria.function
│  │  │  │  │  ├── test_suite_asn1parse.data
│  │  │  │  │  ├── test_suite_asn1parse.function
│  │  │  │  │  ├── test_suite_asn1write.data
│  │  │  │  │  ├── test_suite_asn1write.function
│  │  │  │  │  ├── test_suite_base64.data
│  │  │  │  │  ├── test_suite_base64.function
│  │  │  │  │  ├── test_suite_bignum.function
│  │  │  │  │  ├── test_suite_bignum.misc.data
│  │  │  │  │  ├── test_suite_bignum_core.function
│  │  │  │  │  ├── test_suite_bignum_core.misc.data
│  │  │  │  │  ├── test_suite_bignum_mod.function
│  │  │  │  │  ├── test_suite_bignum_mod.misc.data
│  │  │  │  │  ├── test_suite_bignum_mod_raw.data
│  │  │  │  │  ├── test_suite_bignum_mod_raw.function
│  │  │  │  │  ├── test_suite_bignum_random.data
│  │  │  │  │  ├── test_suite_bignum_random.function
│  │  │  │  │  ├── test_suite_block_cipher.data
│  │  │  │  │  ├── test_suite_block_cipher.function
│  │  │  │  │  ├── test_suite_block_cipher.psa.data
│  │  │  │  │  ├── test_suite_camellia.data
│  │  │  │  │  ├── test_suite_camellia.function
│  │  │  │  │  ├── test_suite_ccm.data
│  │  │  │  │  ├── test_suite_ccm.function
│  │  │  │  │  ├── test_suite_chacha20.data
│  │  │  │  │  ├── test_suite_chacha20.function
│  │  │  │  │  ├── test_suite_chachapoly.data
│  │  │  │  │  ├── test_suite_chachapoly.function
│  │  │  │  │  ├── test_suite_cipher.aes.data
│  │  │  │  │  ├── test_suite_cipher.aria.data
│  │  │  │  │  ├── test_suite_cipher.camellia.data
│  │  │  │  │  ├── test_suite_cipher.ccm.data
│  │  │  │  │  ├── test_suite_cipher.chacha20.data
│  │  │  │  │  ├── test_suite_cipher.chachapoly.data
│  │  │  │  │  ├── test_suite_cipher.des.data
│  │  │  │  │  ├── test_suite_cipher.function
│  │  │  │  │  ├── test_suite_cipher.gcm.data
│  │  │  │  │  ├── test_suite_cipher.misc.data
│  │  │  │  │  ├── test_suite_cipher.nist_kw.data
│  │  │  │  │  ├── test_suite_cipher.null.data
│  │  │  │  │  ├── test_suite_cipher.padding.data
│  │  │  │  │  ├── test_suite_cmac.data
│  │  │  │  │  ├── test_suite_cmac.function
│  │  │  │  │  ├── test_suite_common.data
│  │  │  │  │  ├── test_suite_common.function
│  │  │  │  │  ├── test_suite_config.function
│  │  │  │  │  ├── test_suite_config.tls_combinations.data
│  │  │  │  │  ├── test_suite_constant_time.data
│  │  │  │  │  ├── test_suite_constant_time.function
│  │  │  │  │  ├── test_suite_constant_time_hmac.data
│  │  │  │  │  ├── test_suite_constant_time_hmac.function
│  │  │  │  │  ├── test_suite_ctr_drbg.data
│  │  │  │  │  ├── test_suite_ctr_drbg.function
│  │  │  │  │  ├── test_suite_debug.data
│  │  │  │  │  ├── test_suite_debug.function
│  │  │  │  │  ├── test_suite_des.data
│  │  │  │  │  ├── test_suite_des.function
│  │  │  │  │  ├── test_suite_dhm.data
│  │  │  │  │  ├── test_suite_dhm.function
│  │  │  │  │  ├── test_suite_ecdh.data
│  │  │  │  │  ├── test_suite_ecdh.function
│  │  │  │  │  ├── test_suite_ecdsa.data
│  │  │  │  │  ├── test_suite_ecdsa.function
│  │  │  │  │  ├── test_suite_ecjpake.data
│  │  │  │  │  ├── test_suite_ecjpake.function
│  │  │  │  │  ├── test_suite_ecp.data
│  │  │  │  │  ├── test_suite_ecp.function
│  │  │  │  │  ├── test_suite_entropy.data
│  │  │  │  │  ├── test_suite_entropy.function
│  │  │  │  │  ├── test_suite_error.data
│  │  │  │  │  ├── test_suite_gcm.aes128_de.data
│  │  │  │  │  ├── test_suite_gcm.aes128_en.data
│  │  │  │  │  ├── test_suite_gcm.aes192_de.data
│  │  │  │  │  ├── test_suite_gcm.aes192_en.data
│  │  │  │  │  ├── test_suite_gcm.aes256_de.data
│  │  │  │  │  ├── test_suite_gcm.aes256_en.data
│  │  │  │  │  ├── test_suite_gcm.camellia.data
│  │  │  │  │  ├── test_suite_gcm.function
│  │  │  │  │  ├── test_suite_gcm.misc.data
│  │  │  │  │  ├── test_suite_hkdf.data
│  │  │  │  │  ├── test_suite_hkdf.function
│  │  │  │  │  ├── test_suite_hmac_drbg.function
│  │  │  │  │  ├── test_suite_hmac_drbg.misc.data
│  │  │  │  │  ├── test_suite_hmac_drbg.no_reseed.data
│  │  │  │  │  ├── test_suite_hmac_drbg.nopr.data
│  │  │  │  │  ├── test_suite_hmac_drbg.pr.data
│  │  │  │  │  ├── test_suite_lmots.data
│  │  │  │  │  ├── test_suite_lmots.function
│  │  │  │  │  ├── test_suite_lms.data
│  │  │  │  │  ├── test_suite_lms.function
│  │  │  │  │  ├── test_suite_md.data
│  │  │  │  │  ├── test_suite_md.function
│  │  │  │  │  ├── test_suite_md.psa.data
│  │  │  │  │  ├── test_suite_mdx.data
│  │  │  │  │  ├── test_suite_mdx.function
│  │  │  │  │  ├── test_suite_memory_buffer_alloc.data
│  │  │  │  │  ├── test_suite_memory_buffer_alloc.function
│  │  │  │  │  ├── test_suite_nist_kw.data
│  │  │  │  │  ├── test_suite_nist_kw.function
│  │  │  │  │  ├── test_suite_oid.data
│  │  │  │  │  ├── test_suite_oid.function
│  │  │  │  │  ├── test_suite_pem.data
│  │  │  │  │  ├── test_suite_pem.function
│  │  │  │  │  ├── test_suite_pk.data
│  │  │  │  │  ├── test_suite_pk.function
│  │  │  │  │  ├── test_suite_pkcs12.data
│  │  │  │  │  ├── test_suite_pkcs12.function
│  │  │  │  │  ├── test_suite_pkcs1_v15.data
│  │  │  │  │  ├── test_suite_pkcs1_v15.function
│  │  │  │  │  ├── test_suite_pkcs1_v21.data
│  │  │  │  │  ├── test_suite_pkcs1_v21.function
│  │  │  │  │  ├── test_suite_pkcs5.data
│  │  │  │  │  ├── test_suite_pkcs5.function
│  │  │  │  │  ├── test_suite_pkcs7.data
│  │  │  │  │  ├── test_suite_pkcs7.function
│  │  │  │  │  ├── test_suite_pkparse.data
│  │  │  │  │  ├── test_suite_pkparse.function
│  │  │  │  │  ├── test_suite_pkwrite.data
│  │  │  │  │  ├── test_suite_pkwrite.function
│  │  │  │  │  ├── test_suite_platform.data
│  │  │  │  │  ├── test_suite_platform.function
│  │  │  │  │  ├── test_suite_platform_printf.data
│  │  │  │  │  ├── test_suite_platform_printf.function
│  │  │  │  │  ├── test_suite_platform_util.data
│  │  │  │  │  ├── test_suite_platform_util.function
│  │  │  │  │  ├── test_suite_poly1305.data
│  │  │  │  │  ├── test_suite_poly1305.function
│  │  │  │  │  ├── test_suite_psa_crypto.data
│  │  │  │  │  ├── test_suite_psa_crypto.function
│  │  │  │  │  ├── test_suite_psa_crypto.pbkdf2.data
│  │  │  │  │  ├── test_suite_psa_crypto_attributes.data
│  │  │  │  │  ├── test_suite_psa_crypto_attributes.function
│  │  │  │  │  ├── test_suite_psa_crypto_driver_wrappers.data
│  │  │  │  │  ├── test_suite_psa_crypto_driver_wrappers.function
│  │  │  │  │  ├── test_suite_psa_crypto_entropy.data
│  │  │  │  │  ├── test_suite_psa_crypto_entropy.function
│  │  │  │  │  ├── test_suite_psa_crypto_generate_key.function
│  │  │  │  │  ├── test_suite_psa_crypto_hash.data
│  │  │  │  │  ├── test_suite_psa_crypto_hash.function
│  │  │  │  │  ├── test_suite_psa_crypto_init.data
│  │  │  │  │  ├── test_suite_psa_crypto_init.function
│  │  │  │  │  ├── test_suite_psa_crypto_low_hash.function
│  │  │  │  │  ├── test_suite_psa_crypto_memory.data
│  │  │  │  │  ├── test_suite_psa_crypto_memory.function
│  │  │  │  │  ├── test_suite_psa_crypto_metadata.data
│  │  │  │  │  ├── test_suite_psa_crypto_metadata.function
│  │  │  │  │  ├── test_suite_psa_crypto_not_supported.function
│  │  │  │  │  ├── test_suite_psa_crypto_not_supported.misc.data
│  │  │  │  │  ├── test_suite_psa_crypto_op_fail.function
│  │  │  │  │  ├── test_suite_psa_crypto_op_fail.misc.data
│  │  │  │  │  ├── test_suite_psa_crypto_pake.data
│  │  │  │  │  ├── test_suite_psa_crypto_pake.function
│  │  │  │  │  ├── test_suite_psa_crypto_persistent_key.data
│  │  │  │  │  ├── test_suite_psa_crypto_persistent_key.function
│  │  │  │  │  ├── test_suite_psa_crypto_se_driver_hal.data
│  │  │  │  │  ├── test_suite_psa_crypto_se_driver_hal.function
│  │  │  │  │  ├── test_suite_psa_crypto_se_driver_hal_mocks.data
│  │  │  │  │  ├── test_suite_psa_crypto_se_driver_hal_mocks.function
│  │  │  │  │  ├── test_suite_psa_crypto_slot_management.data
│  │  │  │  │  ├── test_suite_psa_crypto_slot_management.function
│  │  │  │  │  ├── test_suite_psa_crypto_storage_format.function
│  │  │  │  │  ├── test_suite_psa_crypto_storage_format.misc.data
│  │  │  │  │  ├── test_suite_psa_crypto_util.data
│  │  │  │  │  ├── test_suite_psa_crypto_util.function
│  │  │  │  │  ├── test_suite_psa_its.data
│  │  │  │  │  ├── test_suite_psa_its.function
│  │  │  │  │  ├── test_suite_random.data
│  │  │  │  │  ├── test_suite_random.function
│  │  │  │  │  ├── test_suite_rsa.data
│  │  │  │  │  ├── test_suite_rsa.function
│  │  │  │  │  ├── test_suite_shax.data
│  │  │  │  │  ├── test_suite_shax.function
│  │  │  │  │  ├── test_suite_ssl.data
│  │  │  │  │  ├── test_suite_ssl.function
│  │  │  │  │  ├── test_suite_ssl.records.data
│  │  │  │  │  ├── test_suite_ssl.tls-defrag.data
│  │  │  │  │  ├── test_suite_ssl_decrypt.function
│  │  │  │  │  ├── test_suite_ssl_decrypt.misc.data
│  │  │  │  │  ├── test_suite_test_helpers.function
│  │  │  │  │  ├── test_suite_version.data
│  │  │  │  │  ├── test_suite_version.function
│  │  │  │  │  ├── test_suite_x509_oid.data
│  │  │  │  │  ├── test_suite_x509_oid.function
│  │  │  │  │  ├── test_suite_x509parse.data
│  │  │  │  │  ├── test_suite_x509parse.function
│  │  │  │  │  ├── test_suite_x509write.data
│  │  │  │  │  │ test_suite_x509write.function
│  │  │  ├── visualc
│  │  │  │  ├── VS2017
│  │  │  │  │  │ .gitignore
│  │  │  ├── zephyr
│  │  │  │  │ module.yml
│  │  ├── oberon-psa-crypto
│  │  │  ├── .github
│  │  │  │  ├── test-spec.yml
│  │  │  │  ├── workflows
│  │  │  │  │  │ lint-yaml.yml
│  │  │  ├── CHANGELOG.md
│  │  │  ├── CMakeLists.txt
│  │  │  ├── LICENSING.md
│  │  │  ├── README.md
│  │  │  ├── VERSION
│  │  │  ├── api-tests
│  │  │  │  ├── dev_apis
│  │  │  │  │  ├── crypto
│  │  │  │  │  │  ├── test_c069
│  │  │  │  │  │  │  │ test_data.h
│  │  │  │  │  │  ├── test_c070
│  │  │  │  │  │  │  │ test_data.h
│  │  │  │  │  │  ├── test_c072
│  │  │  │  │  │  │  │ test_data.h
│  │  │  │  │  │  ├── test_c073
│  │  │  │  │  │  │  │ test_data.h
│  │  │  │  │  │  ├── test_c074
│  │  │  │  │  │  │  │ test_data.h
│  │  │  │  │  │  ├── test_c075
│  │  │  │  │  │  │  │ test_data.h
│  │  │  │  │  │  ├── test_c076
│  │  │  │  │  │  │  │ test_data.h
│  │  │  │  │  │  ├── test_c077
│  │  │  │  │  │  │  │ test_data.h
│  │  │  │  ├── platform
│  │  │  │  │  ├── targets
│  │  │  │  │  │  ├── common
│  │  │  │  │  │  │  ├── nspe
│  │  │  │  │  │  │  │  ├── crypto
│  │  │  │  │  │  │  │  │  │ pal_crypto_intf.c
│  │  │  ├── core
│  │  │  │  ├── alignment.h
│  │  │  │  ├── check_crypto_config.h
│  │  │  │  ├── psa_crypto.c
│  │  │  │  ├── psa_crypto_client.c
│  │  │  │  ├── psa_crypto_core.h
│  │  │  │  ├── psa_crypto_core_common.h
│  │  │  │  ├── psa_crypto_invasive.h
│  │  │  │  ├── psa_crypto_its.h
│  │  │  │  ├── psa_crypto_slot_management.c
│  │  │  │  ├── psa_crypto_slot_management.h
│  │  │  │  ├── psa_crypto_storage.c
│  │  │  │  ├── psa_crypto_storage.h
│  │  │  │  ├── psa_its_file.c
│  │  │  │  ├── psa_util.c
│  │  │  │  ├── tf_psa_crypto_common.h
│  │  │  │  │ tf_psa_crypto_platform_requirements.h
│  │  │  ├── dispatch
│  │  │  │  ├── psa_crypto_driver_wrappers.h
│  │  │  │  │ psa_crypto_driver_wrappers_no_static.h
│  │  │  ├── drivers
│  │  │  │  │ code_share.c
│  │  │  ├── extras
│  │  │  │  ├── md.c
│  │  │  │  ├── md_wrap.h
│  │  │  │  ├── nist_kw.c
│  │  │  │  ├── pk.c
│  │  │  │  ├── pk_ecc.c
│  │  │  │  ├── pk_internal.h
│  │  │  │  ├── pk_rsa.c
│  │  │  │  ├── pk_wrap.c
│  │  │  │  ├── pk_wrap.h
│  │  │  │  ├── pkparse.c
│  │  │  │  ├── pkwrite.c
│  │  │  │  │ pkwrite.h
│  │  │  ├── framework
│  │  │  │  ├── tests
│  │  │  │  │  ├── include
│  │  │  │  │  │  ├── test
│  │  │  │  │  │  │  ├── arguments.h
│  │  │  │  │  │  │  ├── asn1_helpers.h
│  │  │  │  │  │  │  ├── bignum_helpers.h
│  │  │  │  │  │  │  ├── build_info.h
│  │  │  │  │  │  │  ├── constant_flow.h
│  │  │  │  │  │  │  ├── fake_external_rng_for_test.h
│  │  │  │  │  │  │  ├── helpers.h
│  │  │  │  │  │  │  ├── macros.h
│  │  │  │  │  │  │  ├── psa_crypto_helpers.h
│  │  │  │  │  │  │  ├── psa_exercise_key.h
│  │  │  │  │  │  │  ├── psa_helpers.h
│  │  │  │  │  │  │  ├── random.h
│  │  │  │  │  │  │  │ threading_helpers.h
│  │  │  │  │  ├── src
│  │  │  │  │  │  ├── asn1_helpers.c
│  │  │  │  │  │  ├── helpers.c
│  │  │  │  │  │  ├── psa_crypto_helpers.c
│  │  │  │  │  │  ├── psa_exercise_key.c
│  │  │  │  │  │  ├── random.c
│  │  │  │  │  │  │ test_common.h
│  │  │  ├── include
│  │  │  │  ├── mbedtls
│  │  │  │  │  ├── asn1.h
│  │  │  │  │  ├── asn1write.h
│  │  │  │  │  ├── base64.h
│  │  │  │  │  ├── build_info.h
│  │  │  │  │  ├── compat-3-crypto.h
│  │  │  │  │  ├── config_psa.h
│  │  │  │  │  ├── lms.h
│  │  │  │  │  ├── md.h
│  │  │  │  │  ├── memory_buffer_alloc.h
│  │  │  │  │  ├── nist_kw.h
│  │  │  │  │  ├── oid.h
│  │  │  │  │  ├── pem.h
│  │  │  │  │  ├── pk.h
│  │  │  │  │  ├── platform.h
│  │  │  │  │  ├── platform_time.h
│  │  │  │  │  ├── platform_util.h
│  │  │  │  │  ├── private
│  │  │  │  │  │  ├── bignum.h
│  │  │  │  │  │  ├── cipher.h
│  │  │  │  │  │  ├── crypto_adjust_config_enable_builtins.h
│  │  │  │  │  │  ├── crypto_adjust_config_tweak_builtins.h
│  │  │  │  │  │  ├── error_common.h
│  │  │  │  │  │  │ pk_private.h
│  │  │  │  │  ├── private_access.h
│  │  │  │  │  ├── psa_util.h
│  │  │  │  │  ├── threading.h
│  │  │  │  │  │ timing.h
│  │  │  │  ├── psa
│  │  │  │  │  ├── crypto.h
│  │  │  │  │  ├── crypto_adjust_auto_enabled.h
│  │  │  │  │  ├── crypto_compat.h
│  │  │  │  │  ├── crypto_driver_common.h
│  │  │  │  │  ├── crypto_driver_random.h
│  │  │  │  │  ├── crypto_extra.h
│  │  │  │  │  ├── crypto_legacy.h
│  │  │  │  │  ├── crypto_platform.h
│  │  │  │  │  ├── crypto_se_driver.h
│  │  │  │  │  ├── crypto_sizes.h
│  │  │  │  │  ├── crypto_struct.h
│  │  │  │  │  ├── crypto_types.h
│  │  │  │  │  │ crypto_values.h
│  │  │  │  ├── tf-psa-crypto
│  │  │  │  │  ├── build_info.h
│  │  │  │  │  ├── private
│  │  │  │  │  │  ├── crypto_adjust_config_auto_enabled.h
│  │  │  │  │  │  ├── crypto_adjust_config_derived.h
│  │  │  │  │  │  ├── crypto_adjust_config_key_pair_types.h
│  │  │  │  │  │  ├── crypto_adjust_config_support.h
│  │  │  │  │  │  │ crypto_adjust_config_synonyms.h
│  │  │  │  │  │ version.h
│  │  │  ├── legacy_sub
│  │  │  │  ├── include
│  │  │  │  │  ├── mbedtls
│  │  │  │  │  │  ├── private
│  │  │  │  │  │  │  ├── aes.h
│  │  │  │  │  │  │  ├── aria.h
│  │  │  │  │  │  │  ├── block_cipher.h
│  │  │  │  │  │  │  ├── camellia.h
│  │  │  │  │  │  │  ├── ccm.h
│  │  │  │  │  │  │  ├── chacha20.h
│  │  │  │  │  │  │  ├── chachapoly.h
│  │  │  │  │  │  │  ├── cmac.h
│  │  │  │  │  │  │  ├── config_adjust_test_accelerators.h
│  │  │  │  │  │  │  ├── crypto_builtin_composites.h
│  │  │  │  │  │  │  ├── crypto_builtin_key_derivation.h
│  │  │  │  │  │  │  ├── crypto_builtin_primitives.h
│  │  │  │  │  │  │  ├── ctr_drbg.h
│  │  │  │  │  │  │  ├── ecdsa.h
│  │  │  │  │  │  │  ├── ecjpake.h
│  │  │  │  │  │  │  ├── ecp.h
│  │  │  │  │  │  │  ├── entropy.h
│  │  │  │  │  │  │  ├── error.h
│  │  │  │  │  │  │  ├── gcm.h
│  │  │  │  │  │  │  ├── hmac_drbg.h
│  │  │  │  │  │  │  ├── md5.h
│  │  │  │  │  │  │  ├── pkcs5.h
│  │  │  │  │  │  │  ├── poly1305.h
│  │  │  │  │  │  │  ├── ripemd160.h
│  │  │  │  │  │  │  ├── rsa.h
│  │  │  │  │  │  │  ├── sha1.h
│  │  │  │  │  │  │  ├── sha256.h
│  │  │  │  │  │  │  ├── sha3.h
│  │  │  │  │  │  │  │ sha512.h
│  │  │  │  ├── src
│  │  │  │  │  ├── aes.c
│  │  │  │  │  ├── aesce.c
│  │  │  │  │  ├── aesni.c
│  │  │  │  │  ├── bignum.c
│  │  │  │  │  ├── bignum_core.c
│  │  │  │  │  ├── bignum_core.h
│  │  │  │  │  ├── bignum_core_invasive.h
│  │  │  │  │  ├── bignum_internal.h
│  │  │  │  │  ├── bignum_mod.h
│  │  │  │  │  ├── block_cipher_internal.h
│  │  │  │  │  ├── bn_mul.h
│  │  │  │  │  ├── ccm.c
│  │  │  │  │  ├── chacha20.c
│  │  │  │  │  ├── chacha20_neon.c
│  │  │  │  │  ├── chacha20_neon.h
│  │  │  │  │  ├── chachapoly.c
│  │  │  │  │  ├── cipher.c
│  │  │  │  │  ├── cipher_invasive.h
│  │  │  │  │  ├── cipher_wrap.c
│  │  │  │  │  ├── cipher_wrap.h
│  │  │  │  │  ├── ctr.h
│  │  │  │  │  ├── ctr_drbg.c
│  │  │  │  │  ├── ecdsa.c
│  │  │  │  │  ├── ecjpake.c
│  │  │  │  │  ├── ecp.c
│  │  │  │  │  ├── ecp_curves.c
│  │  │  │  │  ├── ecp_invasive.h
│  │  │  │  │  ├── entropy.c
│  │  │  │  │  ├── entropy_poll.c
│  │  │  │  │  ├── entropy_poll.h
│  │  │  │  │  ├── gcm.c
│  │  │  │  │  ├── hmac_drbg.c
│  │  │  │  │  ├── md5.c
│  │  │  │  │  ├── md_psa.h
│  │  │  │  │  ├── poly1305.c
│  │  │  │  │  ├── psa_util_internal.c
│  │  │  │  │  ├── psa_util_internal.h
│  │  │  │  │  ├── rsa.c
│  │  │  │  │  ├── rsa_alt_helpers.c
│  │  │  │  │  ├── rsa_alt_helpers.h
│  │  │  │  │  ├── rsa_internal.h
│  │  │  │  │  ├── sha1.c
│  │  │  │  │  ├── sha256.c
│  │  │  │  │  ├── sha3.c
│  │  │  │  │  │ sha512.c
│  │  │  ├── library
│  │  │  │  ├── entropy_poll.h
│  │  │  │  ├── psa_crypto_random_impl.h
│  │  │  │  ├── psa_crypto_se.h
│  │  │  │  ├── threading.c
│  │  │  │  │ threading_internal.h
│  │  │  ├── oberon
│  │  │  │  ├── docs
│  │  │  │  │  ├── Appendix_A_Supported_Crypto_Features.md
│  │  │  │  │  ├── Appendix_B_Crypto_Configuration_Directives.md
│  │  │  │  │  ├── Appendix_C_System_Crypto_Configuration_Examples.md
│  │  │  │  │  ├── Appendix_D_Mbed_TLS.md
│  │  │  │  │  ├── Appendix_E_Bug_Tracking.md
│  │  │  │  │  ├── Appendix_F_Testing.md
│  │  │  │  │  ├── Appendix_G_Glossary.md
│  │  │  │  │  ├── Architecture.md
│  │  │  │  │  ├── Crypto_Driver_Development.md
│  │  │  │  │  ├── Documentation_Overview.md
│  │  │  │  │  │ Platform_Integration.md
│  │  │  │  ├── drivers
│  │  │  │  │  ├── CMakeLists.txt
│  │  │  │  │  ├── oberon_aead.c
│  │  │  │  │  ├── oberon_aead.h
│  │  │  │  │  ├── oberon_asymmetric_encrypt.c
│  │  │  │  │  ├── oberon_asymmetric_encrypt.h
│  │  │  │  │  ├── oberon_asymmetric_signature.c
│  │  │  │  │  ├── oberon_asymmetric_signature.h
│  │  │  │  │  ├── oberon_check_unsupported.h
│  │  │  │  │  ├── oberon_cipher.c
│  │  │  │  │  ├── oberon_cipher.h
│  │  │  │  │  ├── oberon_config.h
│  │  │  │  │  ├── oberon_ctr_drbg.c
│  │  │  │  │  ├── oberon_ctr_drbg.h
│  │  │  │  │  ├── oberon_ec_keys.c
│  │  │  │  │  ├── oberon_ec_keys.h
│  │  │  │  │  ├── oberon_ecdh.c
│  │  │  │  │  ├── oberon_ecdh.h
│  │  │  │  │  ├── oberon_ecdsa.c
│  │  │  │  │  ├── oberon_ecdsa.h
│  │  │  │  │  ├── oberon_eddsa.c
│  │  │  │  │  ├── oberon_eddsa.h
│  │  │  │  │  ├── oberon_hash.c
│  │  │  │  │  ├── oberon_hash.h
│  │  │  │  │  ├── oberon_helpers.c
│  │  │  │  │  ├── oberon_helpers.h
│  │  │  │  │  ├── oberon_hmac_drbg.c
│  │  │  │  │  ├── oberon_hmac_drbg.h
│  │  │  │  │  ├── oberon_jpake.c
│  │  │  │  │  ├── oberon_jpake.h
│  │  │  │  │  ├── oberon_key_agreement.c
│  │  │  │  │  ├── oberon_key_agreement.h
│  │  │  │  │  ├── oberon_key_derivation.c
│  │  │  │  │  ├── oberon_key_derivation.h
│  │  │  │  │  ├── oberon_key_encapsulation.c
│  │  │  │  │  ├── oberon_key_encapsulation.h
│  │  │  │  │  ├── oberon_key_management.c
│  │  │  │  │  ├── oberon_key_management.h
│  │  │  │  │  ├── oberon_key_wrap.c
│  │  │  │  │  ├── oberon_key_wrap.h
│  │  │  │  │  ├── oberon_lms.c
│  │  │  │  │  ├── oberon_lms.h
│  │  │  │  │  ├── oberon_mac.c
│  │  │  │  │  ├── oberon_mac.h
│  │  │  │  │  ├── oberon_ml_dsa.c
│  │  │  │  │  ├── oberon_ml_dsa.h
│  │  │  │  │  ├── oberon_ml_kem.c
│  │  │  │  │  ├── oberon_ml_kem.h
│  │  │  │  │  ├── oberon_pake.c
│  │  │  │  │  ├── oberon_pake.h
│  │  │  │  │  ├── oberon_rsa.c
│  │  │  │  │  ├── oberon_rsa.h
│  │  │  │  │  ├── oberon_spake2p.c
│  │  │  │  │  ├── oberon_spake2p.h
│  │  │  │  │  ├── oberon_srp.c
│  │  │  │  │  ├── oberon_srp.h
│  │  │  │  │  ├── oberon_wpa3_sae.c
│  │  │  │  │  ├── oberon_wpa3_sae.h
│  │  │  │  │  ├── oberon_xmss.c
│  │  │  │  │  ├── oberon_xmss.h
│  │  │  │  │  ├── oberon_xof.c
│  │  │  │  │  ├── oberon_xof.h
│  │  │  │  │  ├── ocrypto
│  │  │  │  │  │  │ CMakeLists.txt
│  │  │  │  ├── platforms
│  │  │  │  │  ├── demo
│  │  │  │  │  │  ├── CMakeLists.txt
│  │  │  │  │  │  ├── drivers
│  │  │  │  │  │  │  ├── CMakeLists.txt
│  │  │  │  │  │  │  ├── demo_driver_config.h
│  │  │  │  │  │  │  ├── demo_entropy.c
│  │  │  │  │  │  │  ├── demo_entropy.h
│  │  │  │  │  │  │  ├── demo_hardware.c
│  │  │  │  │  │  │  ├── demo_hardware.h
│  │  │  │  │  │  │  ├── demo_opaque.c
│  │  │  │  │  │  │  │ demo_opaque.h
│  │  │  │  │  │  ├── example_config
│  │  │  │  │  │  │  ├── crypto_config_demo.h
│  │  │  │  │  │  │  ├── crypto_config_demo_min.h
│  │  │  │  │  │  │  ├── crypto_config_min.h
│  │  │  │  │  │  │  │ crypto_config_oberon.h
│  │  │  │  │  │  ├── include
│  │  │  │  │  │  │  ├── psa
│  │  │  │  │  │  │  │  ├── crypto_config.h
│  │  │  │  │  │  │  │  │ crypto_driver_config.h
│  │  │  │  │  │  ├── library
│  │  │  │  │  │  │  │ psa_crypto_driver_wrappers.c
│  │  │  │  │  ├── nordic_nrf
│  │  │  │  │  │  ├── drivers
│  │  │  │  │  │  │  ├── cc3xx_crypto_primitives_private.h
│  │  │  │  │  │  │  ├── cc3xx_psa_config.h
│  │  │  │  │  │  │  │ cc3xx_psa_rsa.h
│  │  │  │  │  │  ├── example_config
│  │  │  │  │  │  │  ├── crypto_config_cc3xx.h
│  │  │  │  │  │  │  ├── crypto_config_driver_only.h
│  │  │  │  │  │  │  ├── crypto_config_min.h
│  │  │  │  │  │  │  │ crypto_config_oberon.h
│  │  │  │  │  │  ├── include
│  │  │  │  │  │  │  ├── psa
│  │  │  │  │  │  │  │  ├── crypto_config.h
│  │  │  │  │  │  │  │  │ crypto_driver_config.h
│  │  │  │  │  │  ├── library
│  │  │  │  │  │  │  │ psa_crypto_driver_wrappers.c
│  │  │  ├── platform
│  │  │  │  ├── memory_buffer_alloc.c
│  │  │  │  ├── platform.c
│  │  │  │  ├── platform_util.c
│  │  │  │  ├── threading.c
│  │  │  │  │ threading_internal.h
│  │  │  ├── programs
│  │  │  │  ├── README-SSL.md
│  │  │  │  ├── ssl
│  │  │  │  │  ├── CMakeLists.txt
│  │  │  │  │  ├── generated
│  │  │  │  │  │  ├── error.c
│  │  │  │  │  │  ├── query_config.c
│  │  │  │  │  │  │ ssl_debug_helpers_generated.c
│  │  │  │  │  ├── include
│  │  │  │  │  │  ├── mbedtls
│  │  │  │  │  │  │  ├── build_info.h
│  │  │  │  │  │  │  ├── mbedtls_config_TLS1_2+3.h
│  │  │  │  │  │  │  │ mbedtls_config_TLS1_2.h
│  │  │  │  │  │  ├── psa
│  │  │  │  │  │  │  │ crypto_config.h
│  │  │  │  │  │  ├── test
│  │  │  │  │  │  │  │ test_certs.h
│  │  │  ├── tests
│  │  │  │  ├── cycles
│  │  │  │  │  ├── CMakeLists.txt
│  │  │  │  │  ├── M0
│  │  │  │  │  │  ├── ARMCM0.h
│  │  │  │  │  │  ├── SpeedM0.uvprojx
│  │  │  │  │  │  ├── startup_ARMCM0.s
│  │  │  │  │  │  ├── system_ARMCM0.c
│  │  │  │  │  │  │ system_ARMCM0.h
│  │  │  │  │  ├── M4F
│  │  │  │  │  │  ├── ARMCM4.h
│  │  │  │  │  │  ├── SpeedM4.uvprojx
│  │  │  │  │  │  ├── startup_ARMCM4.s
│  │  │  │  │  │  ├── system_ARMCM4.c
│  │  │  │  │  │  │ system_ARMCM4.h
│  │  │  │  │  ├── cycle_test.c
│  │  │  │  │  ├── cycle_test_ocrypto.c
│  │  │  │  │  ├── cycle_test_psa_drivers.c
│  │  │  │  │  ├── cycle_test_tinycrypt.c
│  │  │  │  │  ├── include
│  │  │  │  │  │  ├── psa
│  │  │  │  │  │  │  │ crypto_config.h
│  │  │  │  │  ├── tf-psa-crypto
│  │  │  │  │  │  ├── minimal_rng.c
│  │  │  │  │  │  ├── psa
│  │  │  │  │  │  │  │ crypto_config.h
│  │  │  │  │  │  ├── psa_crypto_driver_wrappers.h
│  │  │  │  │  │  │ psa_crypto_driver_wrappers_no_static.c
│  │  │  │  ├── generated
│  │  │  │  │  ├── test_suite_psa_crypto.c
│  │  │  │  │  ├── test_suite_psa_crypto.concurrent.c
│  │  │  │  │  ├── test_suite_psa_crypto.concurrent.datax
│  │  │  │  │  ├── test_suite_psa_crypto.datax
│  │  │  │  │  ├── test_suite_psa_crypto.pbkdf2.c
│  │  │  │  │  ├── test_suite_psa_crypto.pbkdf2.datax
│  │  │  │  │  ├── test_suite_psa_crypto.persistent.c
│  │  │  │  │  ├── test_suite_psa_crypto.persistent.datax
│  │  │  │  │  ├── test_suite_psa_crypto_attributes.c
│  │  │  │  │  ├── test_suite_psa_crypto_attributes.datax
│  │  │  │  │  ├── test_suite_psa_crypto_driver_wrappers.c
│  │  │  │  │  ├── test_suite_psa_crypto_driver_wrappers.datax
│  │  │  │  │  ├── test_suite_psa_crypto_ecp.c
│  │  │  │  │  ├── test_suite_psa_crypto_entropy.c
│  │  │  │  │  ├── test_suite_psa_crypto_entropy.datax
│  │  │  │  │  ├── test_suite_psa_crypto_generate_key.generated.c
│  │  │  │  │  ├── test_suite_psa_crypto_generate_key.generated.datax
│  │  │  │  │  ├── test_suite_psa_crypto_hash.c
│  │  │  │  │  ├── test_suite_psa_crypto_init.c
│  │  │  │  │  ├── test_suite_psa_crypto_init.datax
│  │  │  │  │  ├── test_suite_psa_crypto_low_hash.generated.c
│  │  │  │  │  ├── test_suite_psa_crypto_memory.c
│  │  │  │  │  ├── test_suite_psa_crypto_metadata.c
│  │  │  │  │  ├── test_suite_psa_crypto_metadata.datax
│  │  │  │  │  ├── test_suite_psa_crypto_not_supported.generated.c
│  │  │  │  │  ├── test_suite_psa_crypto_not_supported.generated.datax
│  │  │  │  │  ├── test_suite_psa_crypto_not_supported.misc.c
│  │  │  │  │  ├── test_suite_psa_crypto_op_fail.generated.c
│  │  │  │  │  ├── test_suite_psa_crypto_op_fail.generated.datax
│  │  │  │  │  ├── test_suite_psa_crypto_op_fail.misc.c
│  │  │  │  │  ├── test_suite_psa_crypto_op_fail.misc.datax
│  │  │  │  │  ├── test_suite_psa_crypto_pake.c
│  │  │  │  │  ├── test_suite_psa_crypto_pake.datax
│  │  │  │  │  ├── test_suite_psa_crypto_persistent_key.c
│  │  │  │  │  ├── test_suite_psa_crypto_persistent_key.datax
│  │  │  │  │  ├── test_suite_psa_crypto_se_driver_hal.c
│  │  │  │  │  ├── test_suite_psa_crypto_se_driver_hal.datax
│  │  │  │  │  ├── test_suite_psa_crypto_se_driver_hal_mocks.datax
│  │  │  │  │  ├── test_suite_psa_crypto_slot_management.c
│  │  │  │  │  ├── test_suite_psa_crypto_slot_management.datax
│  │  │  │  │  ├── test_suite_psa_crypto_storage_format.current.c
│  │  │  │  │  ├── test_suite_psa_crypto_storage_format.current.datax
│  │  │  │  │  ├── test_suite_psa_crypto_storage_format.misc.c
│  │  │  │  │  ├── test_suite_psa_crypto_storage_format.misc.datax
│  │  │  │  │  ├── test_suite_psa_crypto_storage_format.v0.c
│  │  │  │  │  ├── test_suite_psa_crypto_storage_format.v0.datax
│  │  │  │  │  ├── test_suite_psa_crypto_util.c
│  │  │  │  │  ├── test_suite_psa_crypto_xof.c
│  │  │  │  │  ├── test_suite_psa_crypto_xof.datax
│  │  │  │  │  ├── test_suite_psa_its.c
│  │  │  │  │  ├── test_suite_ssl.c
│  │  │  │  │  │ test_suite_ssl.datax
│  │  │  │  ├── include
│  │  │  │  │  ├── mbedtls
│  │  │  │  │  │  │ build_info.h
│  │  │  │  │  ├── oberon_test_drbg.h
│  │  │  │  │  │ oberon_test_xof.h
│  │  │  │  ├── src
│  │  │  │  │  ├── asn1parse_min.c
│  │  │  │  │  ├── asn1write_min.c
│  │  │  │  │  ├── fake_external_rng_for_test.c
│  │  │  │  │  ├── ml_kem_dsa_test.c
│  │  │  │  │  ├── oberon_test_drbg.c
│  │  │  │  │  ├── oberon_test_kdf.c
│  │  │  │  │  ├── oberon_test_key_wrap.c
│  │  │  │  │  ├── oberon_test_lms.c
│  │  │  │  │  ├── oberon_test_ml_kem_dsa.c
│  │  │  │  │  ├── oberon_test_pake.c
│  │  │  │  │  ├── oberon_test_xof.c
│  │  │  │  │  ├── test_helpers
│  │  │  │  │  │  │ ssl_helpers.c
│  │  │  ├── utilities
│  │  │  │  ├── asn1parse.c
│  │  │  │  ├── asn1parse_min.c
│  │  │  │  ├── asn1write.c
│  │  │  │  ├── asn1write_min.c
│  │  │  │  ├── base64.c
│  │  │  │  ├── base64_internal.h
│  │  │  │  ├── constant_time.c
│  │  │  │  ├── constant_time_impl.h
│  │  │  │  ├── constant_time_internal.h
│  │  │  │  ├── crypto_oid.h
│  │  │  │  ├── oid.c
│  │  │  │  ├── pem.c
│  │  │  │  │ pkcs5.c
│  │  │  ├── zephyr
│  │  │  │  │ module.yml
│  ├── lib
│  │  ├── hostap
│  │  │  ├── port
│  │  │  │  ├── mbedtls
│  │  │  │  │  ├── removed
│  │  │  │  │  │  ├── des.c
│  │  │  │  │  │  ├── dhm.c
│  │  │  │  │  │  ├── ecdh.c
│  │  │  │  │  │  ├── mbedtls
│  │  │  │  │  │  │  ├── des.h
│  │  │  │  │  │  │  ├── dhm.h
│  │  │  │  │  │  │  │ ecdh.h
│  │  │  ├── src
│  │  │  │  ├── crypto
│  │  │  │  │  ├── crypto_mbedtls_alt.c
│  │  │  │  │  ├── crypto_module_tests.c
│  │  │  │  │  │ tls_mbedtls_alt.c
│  │  │  │  ├── drivers
│  │  │  │  │  │ driver_zephyr.c
│  │  │  ├── wpa_supplicant
│  │  │  │  ├── events.c
│  │  │  │  ├── wpa_cli_cmds.c
│  │  │  │  │ wpa_supplicant.c
│  │  ├── matter
│  │  │  ├── config
│  │  │  │  ├── nrfconnect
│  │  │  │  │  ├── chip-module
│  │  │  │  │  │  ├── CMakeLists.txt
│  │  │  │  │  │  ├── Kconfig
│  │  │  │  │  │  │ Kconfig.defaults
│  │  │  ├── src
│  │  │  │  ├── crypto
│  │  │  │  │  ├── CHIPCryptoPALPSA.cpp
│  │  │  │  │  ├── CHIPCryptoPALmbedTLS.h
│  │  │  │  │  │ CHIPCryptoPALmbedTLSCert.cpp
│  │  │  │  ├── platform
│  │  │  │  │  ├── nrfconnect
│  │  │  │  │  │  ├── FactoryDataProvider.cpp
│  │  │  │  │  │  │ KMUKeyAllocator.h
│  │  ├── openthread
│  │  │  ├── include
│  │  │  │  ├── openthread
│  │  │  │  │  ├── message.h
│  │  │  │  │  ├── platform
│  │  │  │  │  │  │ radio.h
│  │  │  ├── src
│  │  │  │  ├── cli
│  │  │  │  │  ├── cli_tcp.cpp
│  │  │  │  │  ├── cli_tcp.hpp
│  │  │  │  │  │ cli_udp.cpp
│  │  │  │  ├── core
│  │  │  │  │  ├── api
│  │  │  │  │  │  ├── message_api.cpp
│  │  │  │  │  │  │ random_crypto_api.cpp
│  │  │  │  │  ├── common
│  │  │  │  │  │  ├── locator.hpp
│  │  │  │  │  │  ├── message.cpp
│  │  │  │  │  │  │ message.hpp
│  │  │  │  │  ├── crypto
│  │  │  │  │  │  ├── crypto_platform.cpp
│  │  │  │  │  │  │ mbedtls.cpp
│  │  │  │  │  ├── diags
│  │  │  │  │  │  ├── README.md
│  │  │  │  │  │  ├── factory_diags.cpp
│  │  │  │  │  │  │ factory_diags.hpp
│  │  │  │  │  ├── mac
│  │  │  │  │  │  │ mac_frame.hpp
│  │  │  │  │  ├── meshcop
│  │  │  │  │  │  │ secure_transport.cpp
│  │  │  │  │  ├── thread
│  │  │  │  │  │  ├── indirect_sender.cpp
│  │  │  │  │  │  │ mesh_forwarder.cpp
│  │  │  │  ├── ncp
│  │  │  │  │  │ ncp_base_mtd.cpp
│  │  │  │  ├── posix
│  │  │  │  │  ├── platform
│  │  │  │  │  │  │ udp.cpp
│  │  │  ├── tests
│  │  │  │  ├── scripts
│  │  │  │  │  ├── expect
│  │  │  │  │  │  │ cli-diags.exp
│  │  │  │  ├── unit
│  │  │  │  │  │ test_ecdsa.cpp
│  ├── openthread
│  │  ├── platform
│  │  │  │ crypto_psa.c
│  ├── tee
│  │  ├── tf-m
│  │  │  ├── trusted-firmware-m
│  │  │  │  ├── cmake
│  │  │  │  │  │ install.cmake
│  │  │  │  ├── interface
│  │  │  │  │  ├── src
│  │  │  │  │  │  │ tfm_crypto_api.c
│  │  │  │  ├── platform
│  │  │  │  │  ├── ext
│  │  │  │  │  │  ├── common
│  │  │  │  │  │  │  ├── template
│  │  │  │  │  │  │  │  │ tfm_hal_its_encryption.c
│  │  │  │  │  │  ├── target
│  │  │  │  │  │  │  ├── arm
│  │  │  │  │  │  │  │  ├── mps4
│  │  │  │  │  │  │  │  │  ├── common
│  │  │  │  │  │  │  │  │  │  │ crypto_keys.c
│  │  │  │  │  │  │  │  ├── rse
│  │  │  │  │  │  │  │  │  ├── common
│  │  │  │  │  │  │  │  │  │  │ crypto_keys.c
│  │  │  │  │  │  │  ├── stm
│  │  │  │  │  │  │  │  ├── common
│  │  │  │  │  │  │  │  │  ├── secure_element
│  │  │  │  │  │  │  │  │  │  ├── stsafea
│  │  │  │  │  │  │  │  │  │  │  ├── se_psa
│  │  │  │  │  │  │  │  │  │  │  │  │ se_psa.c
│  │  │  │  ├── secure_fw
│  │  │  │  │  ├── partitions
│  │  │  │  │  │  ├── crypto
│  │  │  │  │  │  │  ├── crypto_key_management.c
│  │  │  │  │  │  │  ├── crypto_library.c
│  │  │  │  │  │  │  │ crypto_spe.h
│  │  │  │  │  │  ├── initial_attestation
│  │  │  │  │  │  │  ├── attest_core.c
│  │  │  │  │  │  │  │ attest_token_encode.c
│  ├── trusted-firmware-m
│  │  ├── Kconfig.mbedtls_minimal.defconfig
│  │  ├── tfm_boards
│  │  │  ├── external_core.cmake
│  │  │  │ external_core_install.cmake
nrfxlib
│  ├── crypto
│  │  ├── CMakeLists.txt
│  │  ├── Kconfig
│  │  ├── doc
│  │  │  ├── api.rst
│  │  │  │ nrf_cc3xx_mbedcrypto.rst
│  │  ├── nrf_cc310_mbedcrypto
│  │  │  ├── include
│  │  │  │  ├── mbedtls
│  │  │  │  │  ├── aes_alt.h
│  │  │  │  │  ├── cc3xx_kmu.h
│  │  │  │  │  ├── ccm_alt.h
│  │  │  │  │  ├── chacha20_alt.h
│  │  │  │  │  ├── chachapoly_alt.h
│  │  │  │  │  ├── cmac_alt.h
│  │  │  │  │  ├── dhm_alt.h
│  │  │  │  │  ├── ecp_alt.h
│  │  │  │  │  ├── poly1305_alt.h
│  │  │  │  │  ├── rsa_alt.h
│  │  │  │  │  ├── sha1_alt.h
│  │  │  │  │  │ sha256_alt.h
│  │  │  │  ├── mbedtls_extra
│  │  │  │  │  ├── cc_aes_defs.h
│  │  │  │  │  ├── cc_aes_defs_proj.h
│  │  │  │  │  ├── cc_bitops.h
│  │  │  │  │  ├── cc_ecpki_types.h
│  │  │  │  │  ├── cc_error.h
│  │  │  │  │  ├── cc_hash_defs.h
│  │  │  │  │  ├── cc_hash_defs_proj.h
│  │  │  │  │  ├── cc_kdf.h
│  │  │  │  │  ├── cc_pal_compiler.h
│  │  │  │  │  ├── cc_pal_types.h
│  │  │  │  │  ├── cc_pal_types_plat.h
│  │  │  │  │  ├── cc_pka_defs_hw.h
│  │  │  │  │  ├── cc_rnd_common.h
│  │  │  │  │  ├── cc_rnd_error.h
│  │  │  │  │  ├── mbedtls_cc_aes_key_wrap.h
│  │  │  │  │  ├── mbedtls_cc_aes_key_wrap_error.h
│  │  │  │  │  ├── mbedtls_cc_ec_mont_edw_error.h
│  │  │  │  │  ├── mbedtls_cc_ecies.h
│  │  │  │  │  ├── mbedtls_cc_hkdf.h
│  │  │  │  │  ├── mbedtls_cc_hkdf_error.h
│  │  │  │  │  ├── mbedtls_cc_srp.h
│  │  │  │  │  │ mbedtls_cc_srp_error.h
│  │  │  ├── lib
│  │  │  │  ├── cortex-m33
│  │  │  │  │  ├── hard-float
│  │  │  │  │  │  ├── no-interrupts
│  │  │  │  │  │  │  │ libnrf_cc310_legacy_crypto_0.9.21.a
│  │  │  │  │  │  ├── short-wchar
│  │  │  │  │  │  │  ├── no-interrupts
│  │  │  │  │  │  │  │  │ libnrf_cc310_legacy_crypto_0.9.21.a
│  │  │  │  │  ├── soft-float
│  │  │  │  │  │  ├── no-interrupts
│  │  │  │  │  │  │  │ libnrf_cc310_legacy_crypto_0.9.21.a
│  │  │  │  │  │  ├── short-wchar
│  │  │  │  │  │  │  ├── no-interrupts
│  │  │  │  │  │  │  │  │ libnrf_cc310_legacy_crypto_0.9.21.a
│  │  │  │  ├── cortex-m4
│  │  │  │  │  ├── hard-float
│  │  │  │  │  │  ├── no-interrupts
│  │  │  │  │  │  │  │ libnrf_cc310_legacy_crypto_0.9.21.a
│  │  │  │  │  │  ├── short-wchar
│  │  │  │  │  │  │  ├── no-interrupts
│  │  │  │  │  │  │  │  │ libnrf_cc310_legacy_crypto_0.9.21.a
│  │  │  │  │  ├── soft-float
│  │  │  │  │  │  ├── no-interrupts
│  │  │  │  │  │  │  │ libnrf_cc310_legacy_crypto_0.9.21.a
│  │  │  │  │  │  ├── short-wchar
│  │  │  │  │  │  │  ├── no-interrupts
│  │  │  │  │  │  │  │  │ libnrf_cc310_legacy_crypto_0.9.21.a
│  │  ├── nrf_cc310_platform
│  │  │  ├── include
│  │  │  │  │ threading_alt.h
│  │  │  ├── src
│  │  │  │  │ nrf_cc3xx_platform_mutex_zephyr.c
│  │  ├── nrf_cc312_mbedcrypto
│  │  │  ├── include
│  │  │  │  ├── mbedtls
│  │  │  │  │  ├── aes_alt.h
│  │  │  │  │  ├── cc3xx_kmu.h
│  │  │  │  │  ├── ccm_alt.h
│  │  │  │  │  ├── chacha20_alt.h
│  │  │  │  │  ├── chachapoly_alt.h
│  │  │  │  │  ├── cmac_alt.h
│  │  │  │  │  ├── dhm_alt.h
│  │  │  │  │  ├── ecp_alt.h
│  │  │  │  │  ├── gcm_alt.h
│  │  │  │  │  ├── poly1305_alt.h
│  │  │  │  │  ├── rsa_alt.h
│  │  │  │  │  ├── sha1_alt.h
│  │  │  │  │  │ sha256_alt.h
│  │  │  │  ├── mbedtls_extra
│  │  │  │  │  ├── cc_aes_defs.h
│  │  │  │  │  ├── cc_aes_defs_proj.h
│  │  │  │  │  ├── cc_bitops.h
│  │  │  │  │  ├── cc_ecpki_types.h
│  │  │  │  │  ├── cc_error.h
│  │  │  │  │  ├── cc_hash_defs.h
│  │  │  │  │  ├── cc_hash_defs_proj.h
│  │  │  │  │  ├── cc_kdf.h
│  │  │  │  │  ├── cc_pal_compiler.h
│  │  │  │  │  ├── cc_pal_types.h
│  │  │  │  │  ├── cc_pal_types_plat.h
│  │  │  │  │  ├── cc_pka_defs_hw.h
│  │  │  │  │  ├── cc_rnd_common.h
│  │  │  │  │  ├── cc_rnd_error.h
│  │  │  │  │  ├── mbedtls_cc_aes_key_wrap.h
│  │  │  │  │  ├── mbedtls_cc_aes_key_wrap_error.h
│  │  │  │  │  ├── mbedtls_cc_ec_mont_edw_error.h
│  │  │  │  │  ├── mbedtls_cc_ecies.h
│  │  │  │  │  ├── mbedtls_cc_hkdf.h
│  │  │  │  │  ├── mbedtls_cc_hkdf_error.h
│  │  │  │  │  ├── mbedtls_cc_srp.h
│  │  │  │  │  │ mbedtls_cc_srp_error.h
│  │  │  ├── lib
│  │  │  │  ├── cortex-m33
│  │  │  │  │  ├── hard-float
│  │  │  │  │  │  ├── no-interrupts
│  │  │  │  │  │  │  │ libnrf_cc312_legacy_crypto_0.9.21.a
│  │  │  │  │  │  ├── short-wchar
│  │  │  │  │  │  │  ├── no-interrupts
│  │  │  │  │  │  │  │  │ libnrf_cc312_legacy_crypto_0.9.21.a
│  │  │  │  │  ├── soft-float
│  │  │  │  │  │  ├── no-interrupts
│  │  │  │  │  │  │  │ libnrf_cc312_legacy_crypto_0.9.21.a
│  │  │  │  │  │  ├── short-wchar
│  │  │  │  │  │  │  ├── no-interrupts
│  │  │  │  │  │  │  │  │ libnrf_cc312_legacy_crypto_0.9.21.a
│  │  ├── nrf_cc312_platform
│  │  │  ├── include
│  │  │  │  │ threading_alt.h
│  │  │  ├── src
│  │  │  │  │ nrf_cc3xx_platform_mutex_zephyr.c
│  │  ├── nrf_oberon
│  │  │  ├── include
│  │  │  │  ├── mbedtls
│  │  │  │  │  ├── chacha20_alt.h
│  │  │  │  │  ├── ecjpake_alt.h
│  │  │  │  │  ├── poly1305_alt.h
│  │  │  │  │  ├── sha1_alt.h
│  │  │  │  │  │ sha256_alt.h
│  │  │  ├── lib
│  │  │  │  ├── cortex-m0
│  │  │  │  │  ├── soft-float
│  │  │  │  │  │  ├── liboberon_mbedtls_3.0.19.a
│  │  │  │  │  │  ├── short-wchar
│  │  │  │  │  │  │  ├── liboberon_mbedtls_3.0.19.a
│  │  │  │  │  │  │  │ oberon_mbedtls_3.0.19.lib
│  │  │  │  ├── cortex-m33+nodsp
│  │  │  │  │  ├── soft-float
│  │  │  │  │  │  ├── liboberon_mbedtls_3.0.19.a
│  │  │  │  │  │  ├── short-wchar
│  │  │  │  │  │  │  ├── liboberon_mbedtls_3.0.19.a
│  │  │  │  │  │  │  │ oberon_mbedtls_3.0.19.lib
│  │  │  │  ├── cortex-m33
│  │  │  │  │  ├── hard-float
│  │  │  │  │  │  ├── liboberon_mbedtls_3.0.19.a
│  │  │  │  │  │  ├── short-wchar
│  │  │  │  │  │  │  ├── liboberon_mbedtls_3.0.19.a
│  │  │  │  │  │  │  │ oberon_mbedtls_3.0.19.lib
│  │  │  │  │  ├── soft-float
│  │  │  │  │  │  ├── liboberon_mbedtls_3.0.19.a
│  │  │  │  │  │  ├── short-wchar
│  │  │  │  │  │  │  ├── liboberon_mbedtls_3.0.19.a
│  │  │  │  │  │  │  │ oberon_mbedtls_3.0.19.lib
│  │  │  │  ├── cortex-m4
│  │  │  │  │  ├── hard-float
│  │  │  │  │  │  ├── liboberon_mbedtls_3.0.19.a
│  │  │  │  │  │  ├── short-wchar
│  │  │  │  │  │  │  ├── liboberon_mbedtls_3.0.19.a
│  │  │  │  │  │  │  │ oberon_mbedtls_3.0.19.lib
│  │  │  │  │  ├── soft-float
│  │  │  │  │  │  ├── liboberon_mbedtls_3.0.19.a
│  │  │  │  │  │  ├── short-wchar
│  │  │  │  │  │  │  ├── liboberon_mbedtls_3.0.19.a
│  │  │  │  │  │  │  │ oberon_mbedtls_3.0.19.lib
│  ├── openthread
│  │  ├── lib
│  │  │  ├── nrf52840
│  │  │  │  ├── hard-float
│  │  │  │  │  ├── v1.4
│  │  │  │  │  │  ├── ftd
│  │  │  │  │  │  │  │ openthread_lib_configuration.txt
│  │  │  │  │  │  ├── master
│  │  │  │  │  │  │  │ openthread_lib_configuration.txt
│  │  │  │  │  │  ├── mtd
│  │  │  │  │  │  │  │ openthread_lib_configuration.txt
│  │  │  │  ├── soft-float
│  │  │  │  │  ├── v1.4
│  │  │  │  │  │  ├── ftd
│  │  │  │  │  │  │  │ openthread_lib_configuration.txt
│  │  │  │  │  │  ├── master
│  │  │  │  │  │  │  │ openthread_lib_configuration.txt
│  │  │  │  │  │  ├── mtd
│  │  │  │  │  │  │  │ openthread_lib_configuration.txt
│  │  │  │  ├── softfp-float
│  │  │  │  │  ├── v1.4
│  │  │  │  │  │  ├── ftd
│  │  │  │  │  │  │  │ openthread_lib_configuration.txt
│  │  │  │  │  │  ├── master
│  │  │  │  │  │  │  │ openthread_lib_configuration.txt
│  │  │  │  │  │  ├── mtd
│  │  │  │  │  │  │  │ openthread_lib_configuration.txt
│  │  │  ├── nrf5340
│  │  │  │  ├── hard-float
│  │  │  │  │  ├── v1.4
│  │  │  │  │  │  ├── ftd
│  │  │  │  │  │  │  │ openthread_lib_configuration.txt
│  │  │  │  │  │  ├── mtd
│  │  │  │  │  │  │  │ openthread_lib_configuration.txt
│  │  │  │  ├── soft-float
│  │  │  │  │  ├── v1.4
│  │  │  │  │  │  ├── ftd
│  │  │  │  │  │  │  │ openthread_lib_configuration.txt
│  │  │  │  │  │  ├── mtd
│  │  │  │  │  │  │  │ openthread_lib_configuration.txt
│  │  │  │  ├── softfp-float
│  │  │  │  │  ├── v1.4
│  │  │  │  │  │  ├── ftd
│  │  │  │  │  │  │  │ openthread_lib_configuration.txt
│  │  │  │  │  │  ├── mtd
│  │  │  │  │  │  │  │ openthread_lib_configuration.txt
│  │  │  ├── nrf54lx
│  │  │  │  ├── hard-float
│  │  │  │  │  ├── v1.4
│  │  │  │  │  │  ├── ftd
│  │  │  │  │  │  │  │ openthread_lib_configuration.txt
│  │  │  │  │  │  ├── master
│  │  │  │  │  │  │  │ openthread_lib_configuration.txt
│  │  │  │  │  │  ├── mtd
│  │  │  │  │  │  │  │ openthread_lib_configuration.txt
│  │  │  │  ├── soft-float
│  │  │  │  │  ├── v1.4
│  │  │  │  │  │  ├── ftd
│  │  │  │  │  │  │  │ openthread_lib_configuration.txt
│  │  │  │  │  │  ├── master
│  │  │  │  │  │  │  │ openthread_lib_configuration.txt
│  │  │  │  │  │  ├── mtd
│  │  │  │  │  │  │  │ openthread_lib_configuration.txt
│  │  │  │  ├── softfp-float
│  │  │  │  │  ├── v1.4
│  │  │  │  │  │  ├── ftd
│  │  │  │  │  │  │  │ openthread_lib_configuration.txt
│  │  │  │  │  │  ├── master
│  │  │  │  │  │  │  │ openthread_lib_configuration.txt
│  │  │  │  │  │  ├── mtd
│  │  │  │  │  │  │  │ openthread_lib_configuration.txt
samples
│  ├── cellular
│  │  ├── location
│  │  │  ├── boards
│  │  │  │  │ thingy91x_nrf9151_ns.conf
│  │  │  │ overlay-nrf700x-wifi-scan-only.conf
│  │  ├── lwm2m_client
│  │  │  │ overlay-assist-wifi.conf
│  │  ├── modem_shell
│  │  │  │ overlay-nrf700x-wifi-scan-only.conf
│  │  ├── nrf_cloud_multi_service
│  │  │  ├── boards
│  │  │  │  ├── native_sim.conf
│  │  │  │  │ thingy91x_nrf9151_ns.conf
│  │  │  ├── overlay_nrf700x_wifi_coap_no_lte.conf
│  │  │  │ overlay_nrf700x_wifi_mqtt_no_lte.conf
│  ├── crypto
│  │  ├── aes_kw
│  │  │  ├── src
│  │  │  │  │ main.c
│  │  ├── kmu_cracen_usage
│  │  │  ├── src
│  │  │  │  │ main.c
│  │  ├── psa_tls
│  │  │  ├── boards
│  │  │  │  ├── nrf5340dk_nrf5340_cpuapp_ns.conf
│  │  │  │  ├── nrf54l15dk_nrf54l10_cpuapp_ns.conf
│  │  │  │  ├── nrf54l15dk_nrf54l15_cpuapp_ns.conf
│  │  │  │  ├── nrf54lc10dk_nrf54lc10a_cpuapp.conf
│  │  │  │  ├── nrf54lv10dk_nrf54lv10a_cpuapp_ns.conf
│  │  │  │  ├── nrf7120dk_nrf7120_cpuapp_ns.conf
│  │  │  │  ├── nrf9151dk_nrf9151_ns.conf
│  │  │  │  ├── nrf9160dk_nrf9160_ns.conf
│  │  │  │  │ nrf9161dk_nrf9161_ns.conf
│  │  │  ├── overlays
│  │  │  │  ├── cc3xx-legacy.conf
│  │  │  │  ├── ecdsa.conf
│  │  │  │  ├── ecdsa_secp384r1.conf
│  │  │  │  │ oberon-legacy.conf
│  │  │  ├── prj.conf
│  │  │  ├── sample.yaml
│  │  │  ├── src
│  │  │  │  │ main.c
│  │  ├── rsa
│  │  │  ├── src
│  │  │  │  │ main.c
│  ├── debug
│  │  ├── memfault
│  │  │  ├── boards
│  │  │  │  ├── thingy91_nrf9160_ns.conf
│  │  │  │  │ thingy91x_nrf9151_ns.conf
│  │  │  │ prj.conf
│  ├── dect
│  │  ├── dect_shell
│  │  │  ├── nrf_cloud_coap.conf
│  │  │  ├── nrf_cloud_mqtt.conf
│  │  │  │ prj.conf
│  ├── matter
│  │  ├── light_bulb
│  │  │  │ overlay-aws-iot-integration.conf
│  ├── net
│  │  ├── aws_iot
│  │  │  ├── boards
│  │  │  │  │ nrf7002dk_nrf5340_cpuapp_ns.conf
│  │  ├── azure_iot_hub
│  │  │  ├── boards
│  │  │  │  ├── nrf54lm20dk_nrf54lm20a_cpuapp_ns.conf
│  │  │  │  ├── nrf54lm20dk_nrf54lm20b_cpuapp_ns.conf
│  │  │  │  ├── nrf7002dk_nrf5340_cpuapp_ns.conf
│  │  │  │  │ nrf7120dk_nrf7120_cpuapp_ns.conf
│  │  ├── download
│  │  │  ├── boards
│  │  │  │  ├── nrf5340dk_nrf5340_cpuapp_ns.conf
│  │  │  │  ├── nrf54l15dk_nrf54l15_cpuapp.conf
│  │  │  │  ├── nrf54lm20dk_nrf54lm20a_cpuapp.conf
│  │  │  │  ├── nrf54lm20dk_nrf54lm20b_cpuapp.conf
│  │  │  │  ├── nrf7002dk_nrf5340_cpuapp_ns.conf
│  │  │  │  │ nrf7120dk_nrf7120_cpuapp_ns.conf
│  │  ├── http_server
│  │  │  ├── overlay-tls-nrf7002dk.conf
│  │  │  ├── overlay-tls-nrf91.conf
│  │  │  │ tls-wifi.conf
│  │  ├── https_client
│  │  │  ├── boards
│  │  │  │  ├── nrf5340dk_nrf5340_cpuapp_ns.conf
│  │  │  │  ├── nrf54l15dk_nrf54l15_cpuapp.conf
│  │  │  │  ├── nrf54lm20dk_nrf54lm20a_cpuapp.conf
│  │  │  │  ├── nrf54lm20dk_nrf54lm20b_cpuapp.conf
│  │  │  │  ├── nrf7002dk_nrf5340_cpuapp_ns.conf
│  │  │  │  │ nrf7120dk_nrf7120_cpuapp_ns.conf
│  │  │  │ overlay-tfm-nrf91.conf
│  │  ├── mqtt
│  │  │  ├── tls-nrf54l-nrf70.conf
│  │  │  ├── tls-nrf7002.conf
│  │  │  │ tls-nrf7120.conf
│  ├── openthread
│  │  ├── coap_client
│  │  │  │ prj.conf
│  │  ├── coap_server
│  │  │  │ prj.conf
│  ├── wifi
│  │  ├── p2p
│  │  │  │ prj.conf
│  │  ├── provisioning
│  │  │  ├── softap
│  │  │  │  │ prj.conf
│  │  ├── shell
│  │  │  ├── overlay-openthread.conf
│  │  │  │ overlay-scan-only.conf
│  │  ├── thread_coex
│  │  │  │ prj.conf
scripts
│  ├── quarantine.yaml
│  │ quarantine_zephyr.yaml
subsys
│  ├── bluetooth
│  │  ├── fast_pair
│  │  │  ├── fp_crypto
│  │  │  │  │ fp_crypto_psa.c
│  │  ├── mesh
│  │  │  │ CMakeLists.txt
│  ├── bootloader
│  │  ├── bl_crypto
│  │  │  │ bl_crypto_ed25519.c
│  ├── net
│  │  ├── lib
│  │  │  ├── hostap_crypto
│  │  │  │  ├── CMakeLists.txt
│  │  │  │  │ Kconfig
│  │  ├── openthread
│  │  │  ├── Kconfig
│  │  │  │ Kconfig.defconfig
│  ├── nrf_security
│  │  ├── CMakeLists.txt
│  │  ├── Kconfig
│  │  ├── Kconfig.legacy
│  │  ├── Kconfig.psa
│  │  ├── Kconfig.psa.nordic
│  │  ├── Kconfig.tf-psa-crypto
│  │  ├── Kconfig.tf-psa-crypto.deprecated
│  │  ├── Kconfig.tls
│  │  ├── cmake
│  │  │  ├── config_to_tf-m.cmake
│  │  │  ├── generate_configs.cmake
│  │  │  ├── legacy_crypto_config.cmake
│  │  │  ├── nrf_config.cmake
│  │  │  ├── psa_crypto_config.cmake
│  │  │  ├── psa_crypto_want_config.cmake
│  │  │  │ psa_interface_include_directories.cmake
│  │  ├── configs
│  │  │  ├── config_extra.cmake.in
│  │  │  ├── legacy_crypto_config.h.template
│  │  │  ├── nrf-config.h.template
│  │  │  ├── psa_crypto_config.h.template
│  │  │  │ psa_crypto_want_config.h.template
│  │  ├── include
│  │  │  ├── mbedtls
│  │  │  │  │ platform.h
│  │  │  ├── psa
│  │  │  │  ├── crypto_driver_config.h
│  │  │  │  ├── crypto_driver_contexts_composites.h
│  │  │  │  │ crypto_driver_contexts_primitives.h
│  │  ├── src
│  │  │  ├── CMakeLists.txt
│  │  │  ├── core
│  │  │  │  ├── CMakeLists.txt
│  │  │  │  ├── lite
│  │  │  │  │  │ CMakeLists.txt
│  │  │  │  ├── nrf_oberon
│  │  │  │  │  │ CMakeLists.txt
│  │  │  ├── drivers
│  │  │  │  ├── Kconfig
│  │  │  │  ├── cracen
│  │  │  │  │  ├── CMakeLists.txt
│  │  │  │  │  ├── cracen_sw
│  │  │  │  │  │  ├── ext
│  │  │  │  │  │  │  ├── gcm_ext.c
│  │  │  │  │  │  │  │ poly1305_ext.c
│  │  │  │  │  │  ├── src
│  │  │  │  │  │  │  │ cracen_sw_mac.c
│  │  │  │  │  ├── cracenpsa
│  │  │  │  │  │  ├── include
│  │  │  │  │  │  │  │ cracen_psa_kmu.h
│  │  │  │  │  │  ├── src
│  │  │  │  │  │  │  │ cracen_psa_kmu.c
│  │  │  │  ├── nrf_cc3xx
│  │  │  │  │  │ public_cc3xx_psa_asymmetric_signature.c
│  │  │  │  ├── nrf_cc3xx_platform
│  │  │  │  │  │ CMakeLists.txt
│  │  │  │  ├── nrf_oberon
│  │  │  │  │  │ CMakeLists.txt
│  │  │  │  ├── zephyr
│  │  │  │  │  │ nrf_rng_entropy.c
│  │  │  ├── legacy
│  │  │  │  ├── CMakeLists.txt
│  │  │  │  ├── dhm_ext.c
│  │  │  │  ├── ecdsa_oberon.c
│  │  │  │  ├── ecjpake_oberon.c
│  │  │  │  ├── md_ext.c
│  │  │  │  ├── memory_buffer_alloc.c
│  │  │  │  │ rsa_ext.c
│  │  │  ├── psa_crypto_driver_wrappers.c
│  │  │  ├── tf-psa-crypto
│  │  │  │  │ CMakeLists.txt
│  │  │  ├── threading
│  │  │  │  ├── include
│  │  │  │  │  │ threading_alt.h
│  │  │  │  ├── threading.cmake
│  │  │  │  │ threading_alt.c
│  │  │  ├── zephyr
│  │  │  │  ├── CMakeLists.txt
│  │  │  │  ├── entropy_poll.c
│  │  │  │  │ psa_crypto_init.c
│  │  ├── tfm
│  │  │  │ CMakeLists.txt
│  ├── secure_storage
│  │  ├── CMakeLists.txt
│  │  ├── compatibility
│  │  │  ├── src
│  │  │  │  ├── its_store_settings_get.c
│  │  │  │  │ its_transform_tsbc.c
tests
│  ├── crypto
│  │  ├── CMakeLists.txt
│  │  ├── Kconfig
│  │  ├── Kconfig.sysbuild
│  │  ├── README.rst
│  │  ├── overlay-cc3xx.conf
│  │  ├── overlay-oberon.conf
│  │  ├── prj.conf
│  │  ├── src
│  │  │  ├── common_test.c
│  │  │  │ common_test.h
│  │  ├── test_cases
│  │  │  ├── CMakeLists.txt
│  │  │  ├── custom-rodata.ld
│  │  │  ├── test_aead.c
│  │  │  ├── test_aes_cbc.c
│  │  │  ├── test_aes_cbc_mac.c
│  │  │  ├── test_aes_ctr.c
│  │  │  ├── test_aes_ecb.c
│  │  │  ├── test_aes_ecb_mac.c
│  │  │  ├── test_ecdh.c
│  │  │  ├── test_ecdsa.c
│  │  │  ├── test_ecjpake.c
│  │  │  ├── test_hkdf.c
│  │  │  ├── test_hmac.c
│  │  │  ├── test_sha_256.c
│  │  │  ├── test_sha_512.c
│  │  │  ├── test_vectors.c
│  │  │  ├── test_vectors_aead_ccm.c
│  │  │  ├── test_vectors_aead_chachapoly.c
│  │  │  ├── test_vectors_aead_gcm.c
│  │  │  ├── test_vectors_aes_cbc.c
│  │  │  ├── test_vectors_aes_cbc_mac.c
│  │  │  ├── test_vectors_aes_ctr.c
│  │  │  ├── test_vectors_aes_ecb.c
│  │  │  ├── test_vectors_aes_ecb_mac.c
│  │  │  ├── test_vectors_ecdh.c
│  │  │  ├── test_vectors_ecdsa_random.c
│  │  │  ├── test_vectors_ecdsa_sign.c
│  │  │  ├── test_vectors_ecdsa_verify.c
│  │  │  ├── test_vectors_ecjpake.c
│  │  │  ├── test_vectors_hkdf.c
│  │  │  ├── test_vectors_hmac.c
│  │  │  ├── test_vectors_sha_256.c
│  │  │  │ test_vectors_sha_512.c
│  │  │ testcase.yaml
│  ├── drivers
│  │  ├── dect
│  │  │  ├── dect_mdm
│  │  │  │  ├── integration
│  │  │  │  │  │ prj.conf
│  ├── lib
│  │  ├── app_jwt
│  │  │  │ prj.conf
│  │  ├── hw_unique_key
│  │  │  │ prj.conf
│  ├── psa_crypto
│  │  ├── src
│  │  │  │ psa_tests_common.h
│  │  ├── tests
│  │  │  ├── test_ikg_identity_key_sign_verify.c
│  │  │  ├── test_kmu_use.c
│  │  │  │ test_kmu_write.c
│  ├── subsys
│  │  ├── bluetooth
│  │  │  ├── mesh
│  │  │  │  ├── light_ctrl
│  │  │  │  │  ├── boards
│  │  │  │  │  │  │ native_sim.conf
│  │  │  │  │  │ prj.conf
│  │  │  │  ├── light_hue
│  │  │  │  │  ├── boards
│  │  │  │  │  │  │ native_sim.conf
│  │  │  │  │  │ prj.conf
│  │  │  │  ├── scheduler_model
│  │  │  │  │  ├── action_planning
│  │  │  │  │  │  ├── boards
│  │  │  │  │  │  │  │ native_sim.conf
│  │  │  │  │  │  │ prj.conf
│  │  │  │  │  ├── message_validity
│  │  │  │  │  │  ├── boards
│  │  │  │  │  │  │  │ native_sim.conf
│  │  │  │  │  │  │ prj.conf
│  │  │  │  │  ├── timing
│  │  │  │  │  │  ├── boards
│  │  │  │  │  │  │  │ native_sim.conf
│  │  │  │  │  │  │ prj.conf
│  │  │  │  ├── sensor_subsys
│  │  │  │  │  ├── boards
│  │  │  │  │  │  │ native_sim.conf
│  │  │  │  │  │ prj.conf
│  │  │  │  ├── silvair_enocean_model
│  │  │  │  │  ├── boards
│  │  │  │  │  │  │ native_sim.conf
│  │  │  │  │  │ prj.conf
│  │  │  │  ├── time_model
│  │  │  │  │  ├── boards
│  │  │  │  │  │  │ native_sim.conf
│  │  │  │  │  │ prj.conf
│  │  ├── bootloader
│  │  │  ├── boot_lock_kmu_keys
│  │  │  │  ├── src
│  │  │  │  │  │ main.c
│  │  ├── kmu
│  │  │  ├── verify_west_ncs_provision
│  │  │  │  ├── src
│  │  │  │  │  │ main.c
│  │  ├── net
│  │  │  ├── lib
│  │  │  │  ├── nrf_provisioning
│  │  │  │  │  │ CMakeLists.txt
│  │  ├── nrf_security
│  │  │  ├── psa_core_lite
│  │  │  │  ├── src
│  │  │  │  │  │ main.c
│  ├── tfm
│  │  ├── tfm_psa_test
│  │  │  │ CMakeLists.txt
west.yml
zephyr
│  ├── boards
│  │  ├── native
│  │  │  ├── nrf_bsim
│  │  │  │  ├── doc
│  │  │  │  │  │ nrf5340bsim.rst
│  │  ├── nxp
│  │  │  ├── mr_canhubk3
│  │  │  │  │ mr_canhubk3-pinctrl.dtsi
│  ├── doc
│  │  ├── connectivity
│  │  │  ├── networking
│  │  │  │  ├── api
│  │  │  │  │  │ sockets.rst
│  │  │  │  │ overview.rst
│  │  ├── develop
│  │  │  │ modules.rst
│  │  ├── releases
│  │  │  │ migration-guide-4.5.rst
│  │  ├── security
│  │  │  │ security-overview.rst
│  ├── drivers
│  │  ├── bluetooth
│  │  │  ├── hci
│  │  │  │  │ Kconfig.esp32
│  │  ├── crypto
│  │  │  ├── CMakeLists.txt
│  │  │  │ Kconfig
│  │  ├── entropy
│  │  │  │ Kconfig.psa_crypto
│  │  ├── wifi
│  │  │  ├── nxp
│  │  │  │  │ Kconfig.nxp
│  ├── dts
│  │  ├── arm
│  │  │  ├── nxp
│  │  │  │  ├── mcx
│  │  │  │  │  ├── nxp_mcxw23x_common.dtsi
│  │  │  │  │  │ nxp_mcxw7x_common.dtsi
│  │  ├── bindings
│  │  │  ├── arm
│  │  │  │  │ nxp,nbu.yaml
│  ├── include
│  │  ├── zephyr
│  │  │  ├── net
│  │  │  │  ├── ocpp.h
│  │  │  │  │ socket.h
│  ├── lib
│  │  ├── libc
│  │  │  ├── minimal
│  │  │  │  ├── include
│  │  │  │  │  │ time.h
│  │  ├── uuid
│  │  │  │ CMakeLists.txt
│  ├── modules
│  │  ├── hal_nxp
│  │  │  ├── mcux
│  │  │  │  ├── Kconfig.mcux
│  │  │  │  ├── mcux-sdk-ng
│  │  │  │  │  ├── middleware
│  │  │  │  │  │  ├── bluetooth_controller.cmake
│  │  │  │  │  │  │ connectivity_framework.cmake
│  │  ├── hal_silabs
│  │  │  ├── simplicity_sdk
│  │  │  │  │ CMakeLists.txt
│  │  ├── hostap
│  │  │  ├── CMakeLists.txt
│  │  │  │ Kconfig
│  │  ├── mbedtls
│  │  │  ├── CMakeLists.txt
│  │  │  ├── Kconfig
│  │  │  ├── Kconfig.ciphersuites
│  │  │  ├── Kconfig.deprecated
│  │  │  ├── Kconfig.mbedtls
│  │  │  ├── Kconfig.psa.auto
│  │  │  ├── Kconfig.tf-psa-crypto
│  │  │  ├── configs
│  │  │  │  ├── config-mbedtls.h
│  │  │  │  ├── config-psa.h
│  │  │  │  │ config-tf-psa-crypto.h
│  │  │  ├── create_psa_files.py
│  │  │  ├── legacy_support.cmake
│  │  │  ├── shell.c
│  │  │  ├── zephyr_entropy.c
│  │  │  │ zephyr_init.c
│  │  ├── openthread
│  │  │  ├── CMakeLists.txt
│  │  │  ├── Kconfig
│  │  │  ├── Kconfig.features
│  │  │  ├── platform
│  │  │  │  ├── CMakeLists.txt
│  │  │  │  │ openthread-core-zephyr-config.h
│  │  ├── trusted-firmware-m
│  │  │  ├── CMakeLists.txt
│  │  │  │ Kconfig.tfm
│  │  ├── uoscore-uedhoc
│  │  │  │ CMakeLists.txt
│  ├── samples
│  │  ├── net
│  │  │  ├── cloud
│  │  │  │  ├── aws_iot_mqtt
│  │  │  │  │  ├── prj.conf
│  │  │  │  │  ├── src
│  │  │  │  │  │  │ main.c
│  │  │  │  ├── mqtt_azure
│  │  │  │  │  │ prj.conf
│  │  │  ├── lwm2m_client
│  │  │  │  ├── overlay-dtls-cert.conf
│  │  │  │  ├── overlay-dtls.conf
│  │  │  │  ├── overlay-nrf91x.conf
│  │  │  │  │ overlay-ot.conf
│  │  │  ├── mqtt_publisher
│  │  │  │  │ overlay-tls.conf
│  │  │  ├── ocpp
│  │  │  │  ├── CMakeLists.txt
│  │  │  │  ├── README.rst
│  │  │  │  ├── overlay-tls13.conf
│  │  │  │  ├── sample.yaml
│  │  │  │  ├── src
│  │  │  │  │  ├── credentials
│  │  │  │  │  │  │ certificate.h
│  │  │  │  │  │ main.c
│  │  │  ├── prometheus
│  │  │  │  │ prj.conf
│  │  │  ├── secure_mqtt_sensor_actuator
│  │  │  │  │ prj.conf
│  │  │  ├── sockets
│  │  │  │  ├── big_http_download
│  │  │  │  │  ├── Makefile.host
│  │  │  │  │  ├── overlay-tls.conf
│  │  │  │  │  │ prj.conf
│  │  │  │  ├── coap_server
│  │  │  │  │  │ overlay-dtls.conf
│  │  │  │  ├── dumb_http_server_mt
│  │  │  │  │  │ overlay-tls.conf
│  │  │  │  ├── echo_client
│  │  │  │  │  ├── overlay-ot-rcp-host-nxp.conf
│  │  │  │  │  ├── overlay-ot-rcp-host-uart.conf
│  │  │  │  │  ├── overlay-ot.conf
│  │  │  │  │  │ overlay-tls.conf
│  │  │  │  ├── echo_server
│  │  │  │  │  ├── overlay-ot-rcp-host-nxp.conf
│  │  │  │  │  ├── overlay-ot.conf
│  │  │  │  │  │ overlay-tls.conf
│  │  │  │  ├── http_client
│  │  │  │  │  │ overlay-tls.conf
│  │  │  │  ├── http_get
│  │  │  │  │  │ overlay-tls.conf
│  │  │  │  ├── http_server
│  │  │  │  │  │ overlay-tls.conf
│  │  │  │  ├── websocket_client
│  │  │  │  │  │ overlay-tls.conf
│  │  │  ├── wifi
│  │  │  │  ├── shell
│  │  │  │  │  ├── nxp
│  │  │  │  │  │  ├── overlay_hostap_hosted_mcu.conf
│  │  │  │  │  │  │ overlay_hostap_rw612.conf
│  │  ├── psa
│  │  │  ├── its
│  │  │  │  │ overlay-secure_storage.conf
│  │  │  ├── persistent_key
│  │  │  │  │ overlay-secure_storage.conf
│  │  ├── subsys
│  │  │  ├── mgmt
│  │  │  │  ├── hawkbit
│  │  │  │  │  │ overlay-tls.conf
│  │  │  │  ├── mcumgr
│  │  │  │  │  ├── smp_svr
│  │  │  │  │  │  │ udp-dtls.conf
│  │  │  │  ├── updatehub
│  │  │  │  │  │ overlay-ot.conf
│  │  │  ├── uuid
│  │  │  │  │ prj.conf
│  ├── scripts
│  │  ├── ci
│  │  │  │ twister_report_analyzer.py
│  ├── snippets
│  │  ├── wifi
│  │  │  ├── wifi-enterprise
│  │  │  │  │ wifi-enterprise-nrf.conf
│  ├── soc
│  │  ├── nordic
│  │  │  ├── common
│  │  │  │  │ soc_secure.c
│  │  ├── nxp
│  │  │  ├── common
│  │  │  │  ├── CMakeLists.txt
│  │  │  │  │ nxp_nbu.c
│  │  │  ├── mcx
│  │  │  │  ├── mcxw
│  │  │  │  │  ├── CMakeLists.txt
│  │  │  │  │  ├── mcxw7xx
│  │  │  │  │  │  │ Kconfig
│  ├── subsys
│  │  ├── bluetooth
│  │  │  ├── crypto
│  │  │  │  │ CMakeLists.txt
│  │  │  ├── host
│  │  │  │  ├── CMakeLists.txt
│  │  │  │  │ Kconfig.gatt
│  │  │  ├── mesh
│  │  │  │  │ CMakeLists.txt
│  │  ├── jwt
│  │  │  │ CMakeLists.txt
│  │  ├── mgmt
│  │  │  ├── mcumgr
│  │  │  │  ├── grp
│  │  │  │  │  ├── fs_mgmt
│  │  │  │  │  │  │ CMakeLists.txt
│  │  │  ├── updatehub
│  │  │  │  │ CMakeLists.txt
│  │  ├── net
│  │  │  ├── ip
│  │  │  │  │ CMakeLists.txt
│  │  │  ├── lib
│  │  │  │  ├── http
│  │  │  │  │  │ CMakeLists.txt
│  │  │  │  ├── lwm2m
│  │  │  │  │  │ CMakeLists.txt
│  │  │  │  ├── shell
│  │  │  │  │  │ CMakeLists.txt
│  │  │  │  ├── sockets
│  │  │  │  │  ├── CMakeLists.txt
│  │  │  │  │  ├── Kconfig
│  │  │  │  │  │ sockets_tls.c
│  │  │  │  ├── tls_credentials
│  │  │  │  │  │ CMakeLists.txt
│  │  │  │  ├── websocket
│  │  │  │  │  │ CMakeLists.txt
│  │  │  │  ├── wireguard
│  │  │  │  │  │ CMakeLists.txt
│  │  ├── random
│  │  │  │ CMakeLists.txt
│  │  ├── secure_storage
│  │  │  ├── CMakeLists.txt
│  │  │  ├── include
│  │  │  │  ├── internal
│  │  │  │  │  ├── zephyr
│  │  │  │  │  │  ├── secure_storage
│  │  │  │  │  │  │  ├── its
│  │  │  │  │  │  │  │  │ common.h
│  │  │  │  ├── psa
│  │  │  │  │  │ internal_trusted_storage.h
│  │  │  ├── src
│  │  │  │  ├── its
│  │  │  │  │  ├── transform
│  │  │  │  │  │  │ aead.c
│  │  ├── storage
│  │  │  ├── flash_map
│  │  │  │  │ CMakeLists.txt
│  ├── tests
│  │  ├── benchmarks
│  │  │  ├── mbedtls
│  │  │  │  │ prj.conf
│  │  ├── bluetooth
│  │  │  ├── bt_crypto
│  │  │  │  │ testcase.yaml
│  │  │  ├── gatt
│  │  │  │  │ testcase.yaml
│  │  │  ├── host
│  │  │  │  ├── crypto
│  │  │  │  │  │ CMakeLists.txt
│  │  │  ├── mesh
│  │  │  │  ├── brg
│  │  │  │  │  │ CMakeLists.txt
│  │  │  │  ├── delayable_msg
│  │  │  │  │  │ CMakeLists.txt
│  │  │  │  ├── net
│  │  │  │  │  │ CMakeLists.txt
│  │  │  │  ├── rpl
│  │  │  │  │  │ CMakeLists.txt
│  │  ├── bsim
│  │  │  ├── net
│  │  │  │  ├── sockets
│  │  │  │  │  ├── echo_test
│  │  │  │  │  │  │ overlay-ot.conf
│  │  ├── crypto
│  │  │  ├── crypto_hash
│  │  │  │  ├── src
│  │  │  │  │  │ main.c
│  │  │  ├── mbedtls_psa
│  │  │  │  │ prj.conf
│  │  │  ├── secp256r1
│  │  │  │  ├── mbedtls.conf
│  │  │  │  │ p256-m_raw.conf
│  │  ├── net
│  │  │  ├── all
│  │  │  │  │ prj.conf
│  │  │  ├── ipv6
│  │  │  │  │ prj.conf
│  │  │  ├── lib
│  │  │  │  ├── http_server
│  │  │  │  │  ├── tls
│  │  │  │  │  │  │ prj.conf
│  │  │  │  ├── lwm2m
│  │  │  │  │  ├── interop
│  │  │  │  │  │  │ prj.conf
│  │  │  │  │  ├── lwm2m_engine
│  │  │  │  │  │  │ CMakeLists.txt
│  │  │  │  ├── wifi_credentials_backend_psa
│  │  │  │  │  │ CMakeLists.txt
│  │  │  ├── socket
│  │  │  │  ├── register
│  │  │  │  │  │ overlay-tls.conf
│  │  │  │  ├── tls_configurations
│  │  │  │  │  │ prj.conf
│  │  ├── subsys
│  │  │  ├── secure_storage
│  │  │  │  ├── psa
│  │  │  │  │  ├── crypto
│  │  │  │  │  │  │ overlay-secure_storage.conf
│  │  │  │  │  ├── its
│  │  │  │  │  │  │ overlay-transform_default.conf
│  │ west.yml

File list hidden for private repositories.
If you have access you can see the diff via the github link.
find-my Diff

Outputs:

Toolchain

Version: f0aa129f09
Build docker image: docker-dtr.nordicsemi.no/sw-production/ncs-build:f0aa129f09_5ea73affbf

Test Spec & Results: ✅ Success; ❌ Failure; 🟠 Queued; 🟡 Progress; ◻️ Skipped; ⚠️ Quarantine

  • ◻️ Toolchain - Skipped: existing toolchain is used
  • ✅ Build twister
  • ❌ Integration tests
    • ✅ test-sdk-audio
    • ✅ desktop52_verification
    • ✅ test-fw-nrfconnect-apps_nrfdesktop
    • ✅ test-fw-nrfconnect-apps
    • ✅ test_ble_nrf_config
    • ✅ test-fw-nrfconnect-ble_mesh
    • ✅ test-fw-nrfconnect-ble_samples
    • ✅ test-fw-nrfconnect-chip
    • ✅ test-fw-nrfconnect-nfc
    • ✅ test-fw-nrfconnect-nrf-iot_libmodem-nrf
    • ✅ test-fw-nrfconnect-nrf-iot_zephyr_lwm2m
    • ✅ test-fw-nrfconnect-nrf-iot_samples
    • ✅ test-fw-nrfconnect-nrf-iot_lwm2m
    • ✅ test-fw-nrfconnect-nrf-iot_thingy91
    • ✅ test-fw-nrfconnect-nrf_crypto
    • ✅ test-fw-nrfconnect-rpc
    • ✅ test-fw-nrfconnect-rs
    • ✅ test-fw-nrfconnect-fem
    • ✅ test-fw-nrfconnect-tfm
    • ❌ test-fw-nrfconnect-thread-main
    • ✅ test-sdk-find-my
    • ✅ test-fw-nrfconnect-nrf_lrcs_mosh
    • ✅ test-fw-nrfconnect-nrf_lrcs_positioning
    • ✅ test-sdk-wifi
    • ✅ test-low-level
    • ✅ test-sdk-mcuboot
    • ✅ test-sdk-dfu
    • ✅ test-fw-nrfconnect-ps-main
    • ✅ test-secdom-samples-public
    • ⚠️ test-fw-nrfconnect-nrf-iot_cloud
    • ⚠️ test-fw-nrfconnect-nrf_lrcs_mosh
    • ⚠️ test-fw-nrfconnect-nrf_lrcs_positioning

Note: This message is automatically posted and updated by the CI

@tomi-font tomi-font force-pushed the mbedtls_update_4.1.0 branch from 6b7a015 to db350e8 Compare May 5, 2026 09:04
@github-actions
Copy link
Copy Markdown

github-actions Bot commented May 5, 2026

You can find the documentation preview for this PR here.

Preview links for modified nRF Connect SDK documents:

https://ncsbmdoc.z6.web.core.windows.net/ncs/PR-28496/nrf/app_dev/device_guides/kmu_guides/kmu_provisioning_overview.html
https://ncsbmdoc.z6.web.core.windows.net/ncs/PR-28496/nrf/app_dev/device_guides/kmu_guides/kmu_psa_crypto_api_prog_model.html
https://ncsbmdoc.z6.web.core.windows.net/ncs/PR-28496/nrf/libraries/security/nrf_security/doc/backend_config.html
https://ncsbmdoc.z6.web.core.windows.net/ncs/PR-28496/nrf/releases_and_maturity/known_issues.html
https://ncsbmdoc.z6.web.core.windows.net/ncs/PR-28496/nrf/releases_and_maturity/releases/release-notes-1.3.0.html
https://ncsbmdoc.z6.web.core.windows.net/ncs/PR-28496/nrf/releases_and_maturity/releases/release-notes-2.6.0.html
https://ncsbmdoc.z6.web.core.windows.net/ncs/PR-28496/nrf/releases_and_maturity/releases/release-notes-2.7.0.html
https://ncsbmdoc.z6.web.core.windows.net/ncs/PR-28496/nrf/releases_and_maturity/releases/release-notes-2.8.0.html
https://ncsbmdoc.z6.web.core.windows.net/ncs/PR-28496/nrf/releases_and_maturity/releases/release-notes-3.2.0-preview3.html
https://ncsbmdoc.z6.web.core.windows.net/ncs/PR-28496/nrf/releases_and_maturity/releases/release-notes-3.2.0.html
https://ncsbmdoc.z6.web.core.windows.net/ncs/PR-28496/nrf/samples/crypto.html
https://ncsbmdoc.z6.web.core.windows.net/ncs/PR-28496/nrf/security/crypto/crypto_supported_features.html
https://ncsbmdoc.z6.web.core.windows.net/ncs/PR-28496/nrf/templates/cheat_sheet.html
https://ncsbmdoc.z6.web.core.windows.net/ncs/PR-28496/nrf/test_and_optimize/test_framework/index.html
doc/nrf/samples/crypto.rst

@tomi-font tomi-font force-pushed the mbedtls_update_4.1.0 branch from 8c93dd0 to 85b9eb3 Compare May 6, 2026 12:12
@tomi-font tomi-font force-pushed the mbedtls_update_4.1.0 branch 2 times, most recently from 1f52ce0 to 8ae399d Compare May 8, 2026 08:14
@tomi-font tomi-font force-pushed the mbedtls_update_4.1.0 branch from 8ae399d to 0b0fbad Compare May 8, 2026 12:31
@tomi-font tomi-font force-pushed the mbedtls_update_4.1.0 branch 6 times, most recently from 7769acc to 1db5745 Compare May 11, 2026 05:47
@shanthanordic shanthanordic added this to the 3.4.0 milestone May 11, 2026
@tomi-font tomi-font force-pushed the mbedtls_update_4.1.0 branch from 1db5745 to bb1dcb5 Compare May 11, 2026 12:05
tomi-font and others added 21 commits May 22, 2026 11:47
Remove Kconfig options CONFIG_NORDIC_SECURITY_BACKEND and
CONFIG_MBEDTLS_LEGACY_CRYPTO_C.

Replace uses of them by what they used to enable.
Individual code owners should check whether all of them are needed,
adjust accordingly, and convert those to use the PSA version instead.

CONFIG_MBEDTLS_DECLARE_PRIVATE_IDENTIFIERS is also enabled as it's a
required option to be able to use internal symbols outside of
Mbed TLS/TF-PSA-Crypto.
It's not actually needed in most cases because legacy crypto was enabled
for RSA support in TLS which now works with PSA out of the box.
But it's still added because for now that Kconfig option
temporarily still acts as a guard for the CONFIG_*_BACKEND Kconfig
options which haven't been removed yet.
Once those Kconfig options are removed,
CONFIG_MBEDTLS_DECLARE_PRIVATE_IDENTIFIERS can be removed from pretty
much all the configurations.

Here is what happens to the Kconfig options that used to be guarded
by CONFIG_MBEDTLS_LEGACY_CRYPTO_C in Kconfig.legacy:

- Most of them are removed. They don't exist anymore, some of them
  already didn't have an effect or weren't used.

- For those that are used, they are extracted and moved to the Kconfig
  file for deprecated options.
  From now on, all those Kconfig options do is enable their PSA
  counterparts (and trigger a deprecation warning).
  Translating them to MBEDTLS_* config options is of no use because
  in TF-PSA-Crypto and Oberon PSA Crypto these options are automatically
  derived from their PSA counterparts, so it's better to just have
  PSA_WANTs in our configuration files, no more legacy.
  The Kconfig options are temporarily kept purely as a convenience
  and to let individual teams do the transition to PSA at the Kconfig
  level themselves.

- MBEDTLS_MD5_C is removed completely as it doesn't have an
  implementation by default in Oberon and MD5 doesn't seem to really
  be needed anywhere.

The legacy crypto files are deleted as they are not relevant anymore.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
The function was removed from Mbed TLS 4, but the pre-built OT library
still links against it, so provide an empty stub.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
Now that we have switched to using the builtin Mbed TLS integration
from Zephyr we need to enable CONFIG_MBEDLTS whenever using TLS/X.509
(previously it did not matter).

So as a convenience make CONFIG_MBEDTLS_TLS_LIBRARY select it.
This for example fixes the sample.openthread.cli* builds.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
HostAP mbedtls alt needs mbedtls_ecp_muladd, which requires
PSA_WANT_ECC_SECP_R1_256 so TF-PSA exposes short-Weierstrass ECP.
Enable for legacy PSA and enterprise.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
Assisted-by: Cursor: Auto
When PSA HKDF is disabled, HostAP still needs software KDF for SHA-384
and SHA-512 on the legacy PSA path. SHA-512 needs nrf_security sha512.c.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
Assisted-by: Cursor: Auto
HOSTAP_CRYPTO_ENTERPRISE depends on ALT_LEGACY_PSA and selects
MBEDTLS_ECP_C for mbedtls_ecp_muladd with Oberon TF-PSA.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
Assisted-by: Cursor: Auto
This target does not exist anymore, so remove it from the
CMake logic.

Signed-off-by: Georgios Vasilakis <georgios.vasilakis@nordicsemi.no>
Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
Remove the config options CC3XX/OBERON _BACKEND options.
These options enable the legacy mbedTLS crypto APIs to be
provided by the binary libraries in nrfxlib. With the new
TF-PSA-Crypto these binaries are being removed and thus these
options need to be removed as well.

Signed-off-by: Georgios Vasilakis <georgios.vasilakis@nordicsemi.no>
Remove the CONFIG_CC3XX_BACKEND option which it does
not exist with the new TF-PSA-Crypto.

Also remove the unused MBEDTLS_ options.

Signed-off-by: Georgios Vasilakis <georgios.vasilakis@nordicsemi.no>
This needs to be handled separately. Either another signature type
will be used, or a PSA implementation will replace the current RSA
one which uses legacy.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
This is to allow enabling NRF_SECURITY without PSA_CRYPTO.
Currently needed by MCUboot's BOOT_SIGNATURE_TYPE_ECDSA_P256.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
Memfault fails to compile without CONFIG_PSA_WANT_ALG_SHA_1 enabled
(errors out in memfault_platform_http.c), so enable it.

Then disable it specifically on the Thingies which overflow.

Memfault probably doesn't actually need SHA-1 to be enabled,
so this would something to fix in the Memfault SDK itself.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
The downloaded t_cose library includes files from the Mbed TLS v3 era
and so is incompatible with the new TF-PSA-Crypto structure.
Quarantine these tests until we update TF-M to v2.3.0.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
- Enable CONFIG_MBEDTLS_BIGNUM_C so that e.g. mbedtls_mpi_*() functions
are built and available.

- Compile dhm.c and supp_psa_api.c in all cases to also have definitions
of functions they implement.

- Add compile definitions so that the code in des.c and dhm.c is
compiled in and not left out. set_source_file_properties() didn't work
for some reason.

- Add the path to the Mbed TLS headers to the include directories
to make oid.h available. This header is gone from TF-PSA-Crypto, and
we want to be able to compile HostAP also when Mbed TLS is disabled,
so because of that we need to manually add that include directory.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
Matter/OT uses this target and includes headers from it.
In some configurations this include is missing so
add it here.

Signed-off-by: Georgios Vasilakis <georgios.vasilakis@nordicsemi.no>
To align with sdk-nrf.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
The previous (outdated) way did not result in PSA Crypto getting
enabled.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
From the verify_hash() function.
Otherwise TLS tests would fail because of this.

This relates to sdk-mbedtls commit
5ca712905aac158b310144d9e09fdfb66bd4a4a5 which has now been discarded.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
Enable the MBEDTLS_TLS_LIBRARY for OPENTHREAD shell, since
it is needed to get the TLS includes and the mbedTLS debug
functionality.

Signed-off-by: Georgios Vasilakis <georgios.vasilakis@nordicsemi.no>
The current pre-compiled libraries are incompatible with the new Mbed
TLS version.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
In some scenarios we would get an undefined reference to
mbedtls_debug_set_threshold() because Mbed TLS wouldn't be compiled in.

The proper fix for this would be to #ifdef out the use of this function
if it is the only undefined reference.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
@carlescufi
Copy link
Copy Markdown
Contributor

DNM removed, hostap fork not needed anymore.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.